| Summary: | Buildroot fails when building GCNano binaries for the STM32MP1 | ||
|---|---|---|---|
| Product: | buildroot | Reporter: | Aaron Decker <adecker246> |
| Component: | Other | Assignee: | unassigned |
| Status: | RESOLVED INVALID | ||
| Severity: | normal | CC: | adecker246, buildroot |
| Priority: | P5 | ||
| Version: | 2020.02 | ||
| Target Milestone: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Host: | Target: | ||
| Build: | |||
|
Description
Aaron Decker
2020-04-06 15:09:47 UTC
Thanks for the bug report. Could you try building against the 4.19 kernel provided by ST at https://github.com/STMicroelectronics/linux/ ? It is very likely that the kernel driver they ship as part of the gcnano-binaries package builds fine only with their 4.19 kernel. I gave that a shot using the tarball from the ST github. I get a different error: https://pastebin.com/UL4vfkNG In file included from /home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_linux.h:61, from /home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_driver.c:62: ./include/linux/module.h:133:6: error: ‘init_module’ specifies less restrictive attribute than its target ‘gpu_init’: ‘cold’ [-Werror=missing-attributes] 133 | int init_module(void) __attribute__((alias(#initfn))); | ^~~~~~~~~~~ /home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_driver.c:1267:1: note: in expansion of macro ‘module_init’ 1267 | module_init(gpu_init); | ^~~~~~~~~~~ /home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_driver.c:1224:19: note: ‘init_module’ target declared here 1224 | static int __init gpu_init(void) | ^~~~~~~~ In file included from /home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_linux.h:61, from /home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_driver.c:62: ./include/linux/module.h:139:7: error: ‘cleanup_module’ specifies less restrictive attribute than its target ‘gpu_exit’: ‘cold’ [-Werror=missing-attributes] 139 | void cleanup_module(void) __attribute__((alias(#exitfn))); | ^~~~~~~~~~~~~~ /home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_driver.c:1268:1: note: in expansion of macro ‘module_exit’ 1268 | module_exit(gpu_exit); | ^~~~~~~~~~~ /home/ajdecker/projects/buildroot/output/build/gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed/./hal/os/linux/kernel/gc_hal_kernel_driver.c:1255:20: note: ‘cleanup_module’ target declared here 1255 | static void __exit gpu_exit(void) | ^~~~~~~~ (In reply to Aaron Decker from comment #2) You're seeing an issue in include/linux/module.h due to a compatibility problem with gcc 9.x. However, this was fixed in upstream Linux and in the ST fork, since version v4.19-stm32mp-r1.5. Could you try building with v4.19-stm32mp-r3.1 instead ? Nevertheless, this is not a Buildroot bug. |