When BR2_TOOLCHAIN_BUILDROOT_FORTRAN is enabled, gcc failes to build with this error: --- In file included from ../../../libgfortran/generated/any_l4.c:26:0: ../../../libgfortran/libgfortran.h:60:29: fatal error: quadmath_weak.h: No such file or directory # include "quadmath_weak.h" ^ compilation terminated. --- A quick fix is to also enable BR2_TOOLCHAIN_BUILDROOT_WCHAR as this is enabling libquadmath in `package/gcc/gcc.mk`. This can be reproduces with a minimal qemu config: --- BR2_x86_64=y BR2_DL_DIR="$(TOPDIR)/../dl" BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_5=y BR2_TOOLCHAIN_BUILDROOT_FORTRAN=y BR2_TARGET_GENERIC_GETTY_PORT="tty1" BR2_SYSTEM_DHCP="eth0" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.5" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/x86_64/linux-4.5.config" BR2_TARGET_ROOTFS_EXT2=y # BR2_TARGET_ROOTFS_TAR is not set ---
(In reply to Thijs Vermeir from comment #0) AFAICS, this defconfig will try to build a fortran, so libquadmath, without wchar support, which is required by quadmath... Care to test with these patches: https://github.com/tSed/buildroot/commit/ae69ebb61cb14455b282c34b26da97e6d2d4a49d https://github.com/tSed/buildroot/commit/82b0c580ce934c969839ce5e5029700d9bbdaff6 They are part of a longer series not posted yet. Regards,
This works for x86_64, but does not work for qemu_arm_versatile_defconfig. --- for i in libgfortran libquadmath ; do cp -dpf /home/tvermeir/buildroot/bug-fortran/output/host/usr/arm-buildroot-linux-uclibcgnueabi/lib*/${i}.a /home/tvermeir/buildroot/bug-fortran/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/ ; done cp: cannot stat ‘/home/tvermeir/buildroot/bug-fortran/output/host/usr/arm-buildroot-linux-uclibcgnueabi/lib*/libquadmath.a’: No such file or directory package/pkg-generic.mk:205: recipe for target '/home/tvermeir/buildroot/bug-fortran/output/build/host-gcc-final-4.9.3/.stamp_host_installed' failed make[1]: *** [/home/tvermeir/buildroot/bug-fortran/output/build/host-gcc-final-4.9.3/.stamp_host_installed] Error 1 Makefile:36: recipe for target '_all' failed make: *** [_all] Error 2 ---
The original patches from Samuel indeed did not fix the build issue on ARM indeed. But in fact the patches from Samuel have not been committed upstream as-is, but were improved to take into account the fact that libquadmath only exists on i386 and x86_64. libquadmath is only copied if BR2_TOOLCHAIN_HAS_LIBQUADMATH and BR2_TOOLCHAIN_HAS_LIBQUADMATH is only "y" on i386 and x86_64. I just tested qemu_arm_versatile_defconfig + Fortran supported enabled, and it builds fine.