build-environment and pathlength
Sven Roederer
devel-sven at geroedel.de
Wed May 26 14:09:34 PDT 2021
Hi,
since some time I carry a patch along to fix running mkimage with a long
pathname for $TOPDIR.
Recently 5a9608102b3c4 was added to work around a similar issue in
kernel2minor (also addressed by [1]) and I just found another when building
uclibc++ .
Based on this it might be required to add a check for the length of $TOPDIR to
avoid buildfailures just as of such upstream-limitations. At least the uclibc+
+ is easy to identify, but kernel2minor and mkimage took some effort and
upstream fixing. But there are more like this waiting for sure.
Adding such test will be quite straight forward, but 2 questions come up
instantly:
* Do we want such check / restriction?
* What will be the best limit for the pathlength?
Sven
uclibc++ build-log
make[5]: Entering directory '/mnt/hosts/strike/develop/sven/openwrt/freifunk/
loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong-
path/freifunk-berlin/openwrt/build_dir/target-mipsel_24kc_musl/uClibc++-0.2.5'
make[5]: stat: src/abi/
libsupc/._mnt_hosts_strike_develop_sven_openwrt_freifunk_loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong-
path_freifunk-berlin_openwrt_staging_dir_toolchain-
mipsel_24kc_gcc-8.4.0_musl_lib_gcc_mipsel-openwrt-linux-
musl_8.4.0_.._.._.._.._mipsel-openwrt-linux-musl_lib_libsupc++.a.dep: File
name too long
/bin/sh: 1: cannot create src/abi/
libsupc/._mnt_hosts_strike_develop_sven_openwrt_freifunk_loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong-
path_freifunk-berlin_openwrt_staging_dir_toolchain-
mipsel_24kc_gcc-8.4.0_musl_lib_gcc_mipsel-openwrt-linux-
musl_8.4.0_.._.._.._.._mipsel-openwrt-linux-musl_lib_libsupc++.a.dep: File
name too long
AR cr src/libuClibc++.a
/mnt/hosts/strike/develop/sven/openwrt/freifunk/
loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong-
path/freifunk-berlin/openwrt/staging_dir/toolchain-mipsel_24kc_gcc-8.4.0_musl/
lib/gcc/mipsel-openwrt-linux-musl/8.4.0/../../../../mipsel-openwrt-linux-musl/
bin/ar: array_type_info.o: No such file or directory
src/Makefile.in:44: recipe for target 'src/libuClibc++.a' failed
make[5]: *** [src/libuClibc++.a] Error 1
mkimage failure:
/mnt/hosts/strike/develop/sven/openwrt/freifunk/second_builddir/openwrt/
scripts/mkits-qsdk-ipq-image.sh /mnt/hosts/strike/develop/sven/openwrt/
freifunk/second_builddir/openwrt/build_dir/target-arm_cortex-a7+neon-
vfpv4_musl_eabi/linux-ipq40xx_generic/tmp/freifunk-berlin-sam0815-
master-08aa269af-ipq40xx-generic-alfa-network_ap120c-ac-squashfs-nand-
factory.bin.its ubi /mnt/hosts/strike/develop/sven/openwrt/freifunk/
second_builddir/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/
linux-ipq40xx_generic/tmp/freifunk-berlin-sam0815-master-08aa269af-ipq40xx-
generic-alfa-network_ap120c-ac-squashfs-nand-factory.bin
PATH=/mnt/hosts/strike/develop/sven/openwrt/freifunk/second_builddir/openwrt/
build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/linux-ipq40xx_generic/
linux-5.4.119/scripts/dtc:/mnt/hosts/strike/develop/sven/openwrt/freifunk/
second_builddir/openwrt/staging_dir/toolchain-arm_cortex-a7+neon-
vfpv4_gcc-8.4.0_musl_eabi/bin:/mnt/hosts/strike/develop/sven/openwrt/freifunk/
second_builddir/openwrt/staging_dir/toolchain-arm_cortex-a7+neon-
vfpv4_gcc-8.4.0_musl_eabi/bin:/mnt/hosts/strike/develop/sven/openwrt/freifunk/
second_builddir/openwrt/staging_dir/toolchain-arm_cortex-a7+neon-
vfpv4_gcc-8.4.0_musl_eabi/bin:/mnt/hosts/strike/develop/sven/openwrt/freifunk/
second_builddir/openwrt/staging_dir/toolchain-arm_cortex-a7+neon-
vfpv4_gcc-8.4.0_musl_eabi/bin:/mnt/hosts/strike/develop/sven/openwrt/freifunk/
second_builddir/openwrt/staging_dir/host/bin:/mnt/hosts/strike/develop/sven/
openwrt/freifunk/second_builddir/openwrt/staging_dir/toolchain-arm_cortex-
a7+neon-vfpv4_gcc-8.4.0_musl_eabi/bin:/mnt/hosts/strike/develop/sven/openwrt/
freifunk/second_builddir/openwrt/staging_dir/host/bin:/mnt/hosts/strike/
develop/sven/openwrt/freifunk/second_builddir/openwrt/staging_dir/host/bin:/
usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/
local/games:/snap/bin mkimage -f /mnt/hosts/strike/develop/sven/openwrt/
freifunk/second_builddir/openwrt/build_dir/target-arm_cortex-a7+neon-
vfpv4_musl_eabi/linux-ipq40xx_generic/tmp/freifunk-berlin-sam0815-
master-08aa269af-ipq40xx-generic-alfa-network_ap120c-ac-squashfs-nand-
factory.bin.its /mnt/hosts/strike/develop/sven/openwrt/freifunk/
second_builddir/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/
linux-ipq40xx_generic/tmp/freifunk-berlin-sam0815-master-08aa269af-ipq40xx-
generic-alfa-network_ap120c-ac-squashfs-nand-factory.bin.new
/mnt/hosts/strike/develop/sven/openwrt/freifunk/second_builddir/openwrt/
build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/linux-ipq40xx_generic/tmp/
freifunk-berlin-sam0815-master-08aa269af-ipq40xx-generic-alfa-network_ap120c-
ac-squashfs-nand-factory.bin.new: Image file name (mkimage) too long, can't
create tmpfile
Makefile:18: recipe for target '/mnt/hosts/strike/develop/sven/openwrt/
freifunk/second_builddir/openwrt/build_dir/target-arm_cortex-a7+neon-
vfpv4_musl_eabi/linux-ipq40xx_generic/tmp/freifunk-berlin-sam0815-
master-08aa269af-ipq40xx-generic-alfa-network_ap120c-ac-squashfs-nand-
factory.bin' failed
make[6]: *** [/mnt/hosts/strike/develop/sven/openwrt/freifunk/second_builddir/
openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/linux-
ipq40xx_generic/tmp/freifunk-berlin-sam0815-master-08aa269af-ipq40xx-generic-
alfa-network_ap120c-ac-squashfs-nand-factory.bin] Error 1
1 - https://github.com/openwrt/openwrt/pull/3262
More information about the openwrt-devel
mailing list