1
votes

Building a root filesystem on Buildroot for a Beaglebone Black target. Using a crosstool-NG toolchain with buildroot and I am getting this error in buildroot:

>>> toolchain-external-custom  Configuring
Incorrect selection of kernel headers: expected 4.2.x, got 4.20.x
john@vmpc:/home/emmet/Downloads/crosstool-ng-1.24.0$ arm-cortex_a8-linux-gnueabihf-gcc -v
Using built-in specs.
COLLECT_GCC=arm-cortex_a8-linux-gnueabihf-gcc
COLLECT_LTO_WRAPPER=/home/emmet/x-tools/arm-cortex_a8-linux-gnueabihf/libexec/gcc/arm-cortex_a8-linux-gnueabihf/8.3.0/lto-wrapper
Target: arm-cortex_a8-linux-gnueabihf
Configured with: /home/emmet/Downloads/crosstool-ng-1.24.0/.build/arm-cortex_a8-linux-gnueabihf/src/gcc/configure --build=x86_64-build_pc-linux-gnu --host=x86_64-build_pc-linux-gnu --target=arm-cortex_a8-linux-gnueabihf --prefix=/home/emmet/x-tools/arm-cortex_a8-linux-gnueabihf --with-sysroot=/home/emmet/x-tools/arm-cortex_a8-linux-gnueabihf/arm-cortex_a8-linux-gnueabihf/sysroot --enable-languages=c,c++ --with-cpu=cortex-a8 --with-fpu=vfpv3 --with-float=hard --with-pkgversion='crosstool-NG 1.24.0' --enable-__cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --disable-libquadmath --disable-libquadmath-support --disable-libsanitizer --disable-libmpx --with-gmp=/home/emmet/Downloads/crosstool-ng-1.24.0/.build/arm-cortex_a8-linux-gnueabihf/buildtools --with-mpfr=/home/emmet/Downloads/crosstool-ng-1.24.0/.build/arm-cortex_a8-linux-gnueabihf/buildtools --with-mpc=/home/emmet/Downloads/crosstool-ng-1.24.0/.build/arm-cortex_a8-linux-gnueabihf/buildtools --with-isl=/home/emmet/Downloads/crosstool-ng-1.24.0/.build/arm-cortex_a8-linux-gnueabihf/buildtools --enable-lto --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --enable-threads=posix --enable-target-optspace --enable-plugin --enable-gold --disable-nls --disable-multilib --with-local-prefix=/home/emmet/x-tools/arm-cortex_a8-linux-gnueabihf/arm-cortex_a8-linux-gnueabihf/sysroot --enable-long-long
Thread model: posix
gcc version 8.3.0 (crosstool-NG 1.24.0) 

Any idea how to fix this?

1
Think I have solved the issue. The tarball on the crosstool-NG's website is out of date and the most up to date kernel on the tarball is 4.2.8 which is now obsolete. Pulled down its github repo and the most up to date kernel is 5.5.X - TecGuy94

1 Answers

2
votes

When using a custom external toolchain in Buildroot you have to tell Buildroot which kernel headers have been used to build the toolchain.

Just enter make menuconfig -> Toolchain -> External toolchain kernel headers series to set it.