Bug 15772 - lz4 failed to compile with gcc 10.4.0
Summary: lz4 failed to compile with gcc 10.4.0
Status: RESOLVED FIXED
Alias: None
Product: buildroot
Classification: Unclassified
Component: Other (show other bugs)
Version: 2023.02
Hardware: All Linux
: P5 critical
Target Milestone: ---
Assignee: unassigned
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-09-15 07:25 UTC by trung.le
Modified: 2023-09-20 14:05 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description trung.le 2023-09-15 07:25:22 UTC
I got following error:

```
>>> host-lz4 1.9.4 Building
PATH="/home/tle/Work/op-build/output/host/bin:/home/tle/Work/op-build/output/host/sbin:/home/tle/.local/bin:/home/tle/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" PKG_CONFIG="/home/tle/Work/op-build/output/host/bin/pkg-config" PKG_CONFIG_SYSROOT_DIR="/" PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 PKG_CONFIG_LIBDIR="/home/tle/Work/op-build/output/host/lib/pkgconfig:/home/tle/Work/op-build/output/host/share/pkgconfig" PATH="/home/tle/Work/op-build/output/host/bin:/home/tle/Work/op-build/output/host/sbin:/home/tle/.local/bin:/home/tle/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" PKG_CONFIG="/home/tle/Work/op-build/output/host/bin/pkg-config" PKG_CONFIG_SYSROOT_DIR="/" PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 PKG_CONFIG_LIBDIR="/home/tle/Work/op-build/output/host/lib/pkgconfig:/home/tle/Work/op-build/output/host/share/pkgconfig" AR="/usr/bin/ar" AS="/usr/bin/as" LD="/usr/bin/ld" NM="/usr/bin/nm" CC="/usr/bin/gcc" GCC="/usr/bin/gcc" CXX="/usr/bin/g++" CPP="/usr/bin/cpp" OBJCOPY="/usr/bin/objcopy" RANLIB="/usr/bin/ranlib" CPPFLAGS="-I/home/tle/Work/op-build/output/host/include" CFLAGS="-O2 -I/home/tle/Work/op-build/output/host/include" CXXFLAGS="-O2 -I/home/tle/Work/op-build/output/host/include" LDFLAGS="-L/home/tle/Work/op-build/output/host/lib -Wl,-rpath,/home/tle/Work/op-build/output/host/lib" INTLTOOL_PERL=/usr/bin/perl /usr/bin/make -j33 -C /home/tle/Work/op-build/output/build/host-lz4-1.9.4 lib
make[1]: Entering directory '/home/tle/Work/op-build/output/build/host-lz4-1.9.4'
make[2]: Entering directory '/home/tle/Work/op-build/output/build/host-lz4-1.9.4/lib'
make[2]: Leaving directory '/home/tle/Work/op-build/output/build/host-lz4-1.9.4/lib'
make[2]: Entering directory '/home/tle/Work/op-build/output/build/host-lz4-1.9.4/lib'
make[2]: Leaving directory '/home/tle/Work/op-build/output/build/host-lz4-1.9.4/lib'
make[1]: Leaving directory '/home/tle/Work/op-build/output/build/host-lz4-1.9.4'
PATH="/home/tle/Work/op-build/output/host/bin:/home/tle/Work/op-build/output/host/sbin:/home/tle/.local/bin:/home/tle/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" PKG_CONFIG="/home/tle/Work/op-build/output/host/bin/pkg-config" PKG_CONFIG_SYSROOT_DIR="/" PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 PKG_CONFIG_LIBDIR="/home/tle/Work/op-build/output/host/lib/pkgconfig:/home/tle/Work/op-build/output/host/share/pkgconfig" PATH="/home/tle/Work/op-build/output/host/bin:/home/tle/Work/op-build/output/host/sbin:/home/tle/.local/bin:/home/tle/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" PKG_CONFIG="/home/tle/Work/op-build/output/host/bin/pkg-config" PKG_CONFIG_SYSROOT_DIR="/" PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 PKG_CONFIG_LIBDIR="/home/tle/Work/op-build/output/host/lib/pkgconfig:/home/tle/Work/op-build/output/host/share/pkgconfig" AR="/usr/bin/ar" AS="/usr/bin/as" LD="/usr/bin/ld" NM="/usr/bin/nm" CC="/usr/bin/gcc" GCC="/usr/bin/gcc" CXX="/usr/bin/g++" CPP="/usr/bin/cpp" OBJCOPY="/usr/bin/objcopy" RANLIB="/usr/bin/ranlib" CPPFLAGS="-I/home/tle/Work/op-build/output/host/include" CFLAGS="-O2 -I/home/tle/Work/op-build/output/host/include" CXXFLAGS="-O2 -I/home/tle/Work/op-build/output/host/include" LDFLAGS="-L/home/tle/Work/op-build/output/host/lib -Wl,-rpath,/home/tle/Work/op-build/output/host/lib" INTLTOOL_PERL=/usr/bin/perl /usr/bin/make -j33 -C /home/tle/Work/op-build/output/build/host-lz4-1.9.4 lz4
make[1]: Entering directory '/home/tle/Work/op-build/output/build/host-lz4-1.9.4'
make[2]: Entering directory '/home/tle/Work/op-build/output/build/host-lz4-1.9.4/lib'
make[2]: Leaving directory '/home/tle/Work/op-build/output/build/host-lz4-1.9.4/lib'
make[2]: Entering directory '/home/tle/Work/op-build/output/build/host-lz4-1.9.4/programs'
bench.c: In function ‘LZ4F_decompress_binding’:
bench.c:324:37: warning: missing braces around initializer [-Wmissing-braces]
  324 |     LZ4F_decompressOptions_t dOpt = { 1, 0, 0, 0 };
      |                                     ^
      |                                          {       }
bench.c:326:9: error: ‘LZ4F_decompressOptions_t’ has no member named ‘skipChecksums’
  326 |     dOpt.skipChecksums = g_skipChecksums;
      |         ^
make[2]: *** [<builtin>: bench.o] Error 1
make[2]: Leaving directory '/home/tle/Work/op-build/output/build/host-lz4-1.9.4/programs'
make[1]: *** [Makefile:63: lz4] Error 2
make[1]: Leaving directory '/home/tle/Work/op-build/output/build/host-lz4-1.9.4'
make: *** [package/pkg-generic.mk:293: /home/tle/Work/op-build/o
```

I do not see any changes between 2023.02 and 2023.08 for lz4 so I assume this issue might also impact 2023.08
Comment 1 trung.le 2023-09-15 07:44:01 UTC
The fix is quite trivial:

```diff
# file: programs/bench.c
- #include "lz4frame.h"   /* LZ4F_decompress */
+ #include "../lib/lz4frame.h"   /* LZ4F_decompress */
```
Comment 2 trung.le 2023-09-20 14:05:48 UTC
Subsequent runs no longer reports this error. So I think the error was unrelated to upstream. Closing this ticket now.