OpenWrt/LEDE Project

  • Status Closed
  • Percent Complete
    100%
  • Task Type Bug Report
  • Category Base system
  • Assigned To No-one
  • Operating System All
  • Severity Low
  • Priority Very Low
  • Reported Version Trunk
  • Due in Version Undecided
  • Due Date Undecided
  • Private
Attached to Project: OpenWrt/LEDE Project
Opened by jospezial - 30.07.2021
Last edited by Mathias Kresin - 27.11.2021

FS#3955 - uboot-lantiq u-boot-2013.10 fails to compile related sha1

This is with gcc-11 and latest kernel 5.10 in trunk.
Looks like #include <crypto/sha.h> is missing in lib/sha1.c

../common/image-fit.c: In function 'calculate_hash':
../common/image-fit.c:882:17: warning: implicit declaration of function 'sha1_csum_wd' [-Wimplicit-function-declaration]
  882 |                 sha1_csum_wd((unsigned char *)data, data_len,
      |                 ^~~~~~~~~~~~
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE   -o image-host.o image-host.c -c
gcc -g -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE -c -o image.o /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/common/image.c
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE   -o imximage.o imximage.c -c
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE   -o kwbimage.o kwbimage.c -c
gcc -g -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE -pedantic -c -o md5.o /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/md5.c
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE   -o mkimage.o mkimage.c -c
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE   -o mxsimage.o mxsimage.c -c
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE   -o omapimage.o omapimage.c -c
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE   -o pblimage.o pblimage.c -c
gcc -g -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -include /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include/libfdt_env.h -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include2 -idirafter /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/include -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/libfdt -I /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools -DCONFIG_SYS_TEXT_BASE=0x80002000 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE -pedantic -c -o sha1.o /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/lib/sha1.c
../lib/sha1.c:64:19: error: unknown type name 'sha1_context'
   64 | void sha1_starts (sha1_context * ctx)
      |                   ^~~~~~~~~~~~
../lib/sha1.c:76:26: error: unknown type name 'sha1_context'
   76 | static void sha1_process(sha1_context *ctx, const unsigned char data[64])
      |                          ^~~~~~~~~~~~
../lib/sha1.c:233:18: error: unknown type name 'sha1_context'
  233 | void sha1_update(sha1_context *ctx, const unsigned char *input,
      |                  ^~~~~~~~~~~~
../lib/sha1.c:280:19: error: unknown type name 'sha1_context'
  280 | void sha1_finish (sha1_context * ctx, unsigned char output[20])
      |                   ^~~~~~~~~~~~
../lib/sha1.c: In function 'sha1_csum':
../lib/sha1.c:312:9: error: unknown type name 'sha1_context'
  312 |         sha1_context ctx;
      |         ^~~~~~~~~~~~
../lib/sha1.c:314:9: warning: implicit declaration of function 'sha1_starts' [-Wimplicit-function-declaration]
  314 |         sha1_starts (&ctx);
      |         ^~~~~~~~~~~
../lib/sha1.c:315:9: warning: implicit declaration of function 'sha1_update'; did you mean 'SHA1Update'? [-Wimplicit-function-declaration]
  315 |         sha1_update (&ctx, input, ilen);
      |         ^~~~~~~~~~~
      |         SHA1Update
../lib/sha1.c:316:9: warning: implicit declaration of function 'sha1_finish' [-Wimplicit-function-declaration]
  316 |         sha1_finish (&ctx, output);
      |         ^~~~~~~~~~~
../lib/sha1.c: In function 'sha1_csum_wd':
../lib/sha1.c:326:9: error: unknown type name 'sha1_context'
  326 |         sha1_context ctx;
      |         ^~~~~~~~~~~~
../lib/sha1.c: In function 'sha1_hmac':
../lib/sha1.c:360:9: error: unknown type name 'sha1_context'
  360 |         sha1_context ctx;
      |         ^~~~~~~~~~~~
../lib/sha1.c:389:34: error: 'sha1_context' undeclared (first use in this function)
  389 |         memset (&ctx, 0, sizeof (sha1_context));
      |                                  ^~~~~~~~~~~~
../lib/sha1.c:389:34: note: each undeclared identifier is reported only once for each function it appears in
At top level:
../lib/sha1.c:392:19: warning: '_sha1_src' defined but not used [-Wunused-const-variable=]
  392 | static const char _sha1_src[] = "_sha1_src";
      |                   ^~~~~~~~~
../lib/sha1.c:270:28: warning: 'sha1_padding' defined but not used [-Wunused-const-variable=]
  270 | static const unsigned char sha1_padding[64] = {
      |                            ^~~~~~~~~~~~
make[4]: *** [Makefile:264: sha1.o] Error 1
make[4]: Leaving directory '/home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/tools'
make[3]: *** [Makefile:663: tools] Error 2
make[3]: Leaving directory '/home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10'
make[2]: *** [Makefile:393: /home/joerg/Downloads/openwrt6431/build_dir/target-mips_24kc_musl/u-boot-vgv7510kw22_brn/u-boot-2013.10/.built] Error 2
make[2]: Leaving directory '/home/joerg/Downloads/openwrt6431/package/boot/uboot-lantiq'
time: package/boot/uboot-lantiq/vgv7510kw22_brn/compile#9.14#3.33#15.01
    ERROR: package/boot/uboot-lantiq failed to build (build variant: vgv7510kw22_brn).
make[1]: *** [package/Makefile:116: package/boot/uboot-lantiq/compile] Error 1
make[1]: Leaving directory '/home/joerg/Downloads/openwrt6431'
make: *** [/home/joerg/Downloads/openwrt6431/include/toplevel.mk:230: package/boot/uboot-lantiq/compile] Fehler 2

Btw, could we update to a newer u-boot?
https://github.com/danielschwierzeck/u-boot-lantiq/issues/19#issuecomment-459135766 @danielschwierzeck recommended in 2019:
“The latest and most stable branch is openwrt/2014.07. This one has full support for Danube, VRX200 and GRX330 SoC’s incl. NAND booting. I also use this branch in production in my company so I can provide support.
I think OpenWRT itself uses a modified patch set based on the 2013.10 branch. You can additionally look there too for more board support or other bugfixes.
With the lantiq/upstream branch I’m still trying to create a mainline version of the Lantiq port. But due to mainline changes like Kconfig, driver-model, device-tree support etc. the core code needs some bigger rewrite and refactoring for which I hadn’t enough time or motivation yet ;)”

Closed by  Mathias Kresin
27.11.2021 21:44
Reason for closing:  Fixed
Additional comments about closing:  

Fixed with https:/ /git.openwrt.org/8db641049292035604f0e1f b788608fdea879eca

Project Manager
Hauke Mehrtens commented on 28.09.2021 20:03

This problem is seen when you have a /usr/include/sha1.h on your host system, see:
https://github.com/openwrt/openwrt/pull/4541#issuecomment-917620262 There is a bug in the U-Boot build process which makes it use that file.

Alan Swanson commented on 01.10.2021 16:02

Pending any potential u-boot update for lantiq, the following PR fixes the conflict;
https://github.com/openwrt/openwrt/pull/4626

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing