Hi! I've found, that Gentoo Boost maintainers patches the boost-build and adds custom site-config.jam, that causes build failures when user crosscompiles boost for non-gentoo environments: ========= Build log cut =========== make[1]: Entering directory '/home/mva/.vcs_repos/openwrt/ar71xx' make[2]: Entering directory '/home/mva/.vcs_repos/openwrt/ar71xx/feeds/packages/libs/boost' Selected Boost API o32 for architecture mips and cpu 34kc make[2]: Leaving directory '/home/mva/.vcs_repos/openwrt/ar71xx/feeds/packages/libs/boost' make[2]: Entering directory '/home/mva/.vcs_repos/openwrt/ar71xx/package/libs/toolchain' if [ -f /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean ]; then rm -f /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean; fi; echo "libc" >> /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install if [ -f /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean ]; then rm -f /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean; fi; echo "libgcc" >> /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install if [ -f /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean ]; then rm -f /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean; fi; echo "libstdcpp" >> /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install if [ -f /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean ]; then rm -f /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean; fi; echo "libpthread" >> /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install if [ -f /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean ]; then rm -f /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean; fi; echo "librt" >> /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install make[2]: Leaving directory '/home/mva/.vcs_repos/openwrt/ar71xx/package/libs/toolchain' make[2]: Entering directory '/home/mva/.vcs_repos/openwrt/ar71xx/package/libs/zlib' if [ -f /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/zlib.default.install.clean ]; then rm -f /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/zlib.default.install /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/zlib.default.install.clean; fi; echo "zlib" >> /home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/zlib.default.install make[2]: Leaving directory '/home/mva/.vcs_repos/openwrt/ar71xx/package/libs/zlib' make[2]: Entering directory '/home/mva/.vcs_repos/openwrt/ar71xx/package/libs/libiconv-full' make[2]: Leaving directory '/home/mva/.vcs_repos/openwrt/ar71xx/package/libs/libiconv-full' make[2]: Entering directory '/home/mva/.vcs_repos/openwrt/ar71xx/feeds/packages/libs/boost' Selected Boost API o32 for architecture mips and cpu 34kc ( cd /home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0 ; echo "using gcc : mips : mips-openwrt-linux-gcc : <compileflags>\"-Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -msoft-float -I/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib/libiconv-full/include -I/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib/libintl-full/include\" <cxxflags>\"-Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -msoft-float -I/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib/libiconv-full/include -I/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib/libintl-full/include\" <linkflags>\"-L/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib -L/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/lib -L/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/usr/lib -L/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/lib -L/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib/libiconv-full/lib -L/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib/libintl-full/lib -pthread -lrt\" ;" > tools/build/src/user-config.jam ; bjam '-sBUILD=release <optimization>space <inlining>on <debug-symbols>off' --toolset=gcc-mips --build-type=minimal --layout=system abi=o32 --disable-long-double --target=mips-openwrt-linux --host=mips-openwrt-linux --build=x86_64-pc-linux-gnu --program-prefix="" --program-suffix="" --prefix=/home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/ipkg-install --exec-prefix=/home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/ipkg-install --bindir=/home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/ipkg-install/bin --sbindir=/home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/ipkg-install/sbin --libexecdir=/home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/ipkg-install/lib --sysconfdir=/etc --datadir=/home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/ipkg-install/share --localstatedir=/var --mandir=/home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/ipkg-install/man --infodir=/home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/ipkg-install/info --without-mpi --without-test --without-atomic --without-chrono --without-container --without-context --without-coroutine --without-graph --without-iostreams --without-locale --without-log --without-math --without-random --without-python --without-serialization --without-signals --without-thread --without-timer --without-wave boost.locale.iconv=off install ) /home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/tools/build/src/build/feature.jam:493: in feature.validate-value-string from module feature error: "none" is not a known value of feature <optimization> error: legal values: "off" "speed" "space" /home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/tools/build/src/build/property.jam:273: in validate1 from module property /home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/tools/build/src/build/property.jam:299: in property.validate from module property /home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/tools/build/src/tools/builtin.jam:377: in variant from module builtin /usr/share/boost-build/site-config.jam:9: in modules.load from module site-config /home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/tools/build/src/build-system.jam:249: in load-config from module build-system /home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/tools/build/src/build-system.jam:351: in load-configuration-files from module build-system /home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/tools/build/src/build-system.jam:524: in load from module build-system /home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/tools/build/src/kernel/modules.jam:289: in import from module modules /home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/tools/build/src/kernel/bootstrap.jam:139: in boost-build from module /home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/boost-build.jam:17: in module scope from module Makefile:273: recipe for target '/home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/.built' failed make[2]: *** [/home/mva/.vcs_repos/openwrt/ar71xx/build_dir/target-mips_34kc_uClibc-0.9.33.2/boost_1_57_0/.built] Error 1 make[2]: Leaving directory '/home/mva/.vcs_repos/openwrt/ar71xx/feeds/packages/libs/boost' package/Makefile:183: recipe for target 'package/feeds/packages/boost/compile' failed make[1]: *** [package/feeds/packages/boost/compile] Error 2 make[1]: Leaving directory '/home/mva/.vcs_repos/openwrt/ar71xx' ======================================
Btw, when I google for the error from build log I found that on SO: http://stackoverflow.com/questions/23013433/how-to-install-modular-boost And, when I commented out content of site-config.jam, just to check, if I experience same issue as post author on the SO, I successfully built boost for my environment.
Alex Xu, I disagree about subject type. Because boost maintainers said (in comments inside site-config.jam) that there will be exactly this error is use it to compile out-of-portage tree boost. SO they can just close this bug as not a bug with current title. The problem is not in that error message, but in that thing, that boost maintainers shouldn't install such hacks system-wide to do not break boost crossmpilation or whatever.
(In reply to Vadim A. Misbakh-Soloviov (mva) from comment #2) > Alex Xu, I disagree about subject type. > Because boost maintainers said (in comments inside site-config.jam) that > there will be exactly this error is use it to compile out-of-portage tree > boost. SO they can just close this bug as not a bug with current title. > > The problem is not in that error message, but in that thing, that boost > maintainers shouldn't install such hacks system-wide to do not break boost > crossmpilation or whatever. Unfortunately, it's the only way to make boost buildsystem work as we needed. You can add needed targets to /etc/site-config.jam yourself just for cross-compilation.