I came across this error
while trying to build an RPM for apptainer on my system, which is older than what is supported by the authors.
The compilation process seems to complete successfully, but at the end, no RPM is generated. These messages are shown:
error: Missing build-id in /home/swbuild/rpmbuild/BUILDROOT/apptainer-1.1.3-1.el8.x86_64/usr/libexec/apptainer/bin/squashfuse_ll
error: Generating build-id links failed
RPM build errors:
Macro expanded in comment on line 97: %{?el7}
Missing build-id in /home/swbuild/rpmbuild/BUILDROOT/apptainer-1.1.3-1.el8.x86_64/usr/libexec/apptainer/bin/squashfuse_ll
Generating build-id links failed
This is because older versions of GCC do not include the build-id by default. The fix is to add
LDFLAGS="-Wl,--build-id" to the configure line in the
.spec.in file, e.g.
FLAGS=-std=c99 LDFLAGS="-Wl,--build-id" ./configure --enable-multithreading