mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-10 00:04:06 -09:00
288b51719314eba2f7eb6101f1a4ed17b433ddad
Commitf3a483a81badded -std=c++11 to boost build if context is selected and gcc is at least 4.7 however it has the side effect that cc-tool fails to find boost_system with the following error if context and system is enabled with a gcc greater than 6: configure:16312: /home/dawncrow/buildroot-test/scripts/instance-0/output/host/bin/x86_64-linux-g++ -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/home/dawncrow/buildroot-test/scripts/instance-0/output/host/x86_64-buildroot-linux-musl/sysroot/usr/include -L/home/dawncrow/buildroot-test/scripts/instance-0/output/host/x86_64-buildroot-linux-musl/sysroot/usr/lib conftest.o -lboost_system -latomic >&5 conftest.o: In function `boost::system::error_category::std_category::equivalent(int, std::error_condition const&) const': conftest.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition[_ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition]+0x37): undefined reference to `boost::system::detail::generic_category_instance' This error is related to the fact that since boost 1.68 and commit7b6dcf6ac6, boost system headers are now C++14 "by default" with gcc above 6: - https://github.com/boostorg/system/issues/24 - https://github.com/boostorg/system/issues/26 - https://lists.boost.org/Archives/boost/2018/08/242770.php So when building with gcc > 6, cc-tool thinks that boost has generic_category_instance but because boost was compiled with std=c++11, this function will not be in the library causing a link error Instead of "hacking" even more boost, just remove -std=c++11 from boost.mk and select BOOST_THREAD with gcc lower than 6 Fixes: - http://autobuild.buildroot.org/results/fc8f8a64751c751b2b66301967cc008509bbaa70 Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Tested-by: Matt Weber <matthew.weber@rockwellcollins.com> Reviewed-by: Ferdinand van Aartsen <ferdinand@ombud.nl> Tested-by: Ferdinand van Aartsen <ferdinand@ombud.nl> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
…
Buildroot is a simple, efficient and easy-to-use tool to generate embedded Linux systems through cross-compilation. The documentation can be found in docs/manual. You can generate a text document with 'make manual-text' and read output/docs/manual/manual.text. Online documentation can be found at http://buildroot.org/docs.html To build and use the buildroot stuff, do the following: 1) run 'make menuconfig' 2) select the target architecture and the packages you wish to compile 3) run 'make' 4) wait while it compiles 5) find the kernel, bootloader, root filesystem, etc. in output/images You do not need to be root to build or run buildroot. Have fun! Buildroot comes with a basic configuration for a number of boards. Run 'make list-defconfigs' to view the list of provided configurations. Please feed suggestions, bug reports, insults, and bribes back to the buildroot mailing list: buildroot@buildroot.org You can also find us on #buildroot on Freenode IRC. If you would like to contribute patches, please read https://buildroot.org/manual.html#submitting-patches
Description
Languages
Makefile
62.5%
Python
19%
C
8.5%
Shell
6.1%
PHP
1.4%
Other
2.1%