Subject: fapolicyd: FTBFS on hppa - ld returned 1 exit status

From: John David Anglin <[email-masked]>
Date: Mon, 06 Nov 2023 16:06:04 +0000

Source: fapolicyd
Version: 1.1.7-5
Severity: normal
Tags: ftbfs

Dear Maintainer,

Build fails with link error:
/bin/bash ../libtool  --tag=CC   --mode=link gcc -fPIE -DPIE -pthread -g -W -Wall -Wshadow -Wundef -Wno-unused-result -Wno-unused-parameter -D_GNU_SOURCE -DLIBDPKG_VOLATILE_API -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -Wformat -Werror=format-security -pie -Wl,-z,relro -Wl,-z,now -ldpkg -static  -o fapolicyd-cli cli/fapolicyd_cli-fapolicyd-cli.o cli/fapolicyd_cli-file-cli.o libfapolicyd.la -llmdb -lseccomp -lcap-ng -lmagic -lcrypto -ludev -ldpkg -lmd 
libtool: link: gcc -fPIE -DPIE -g -W -Wall -Wshadow -Wundef -Wno-unused-result -Wno-unused-parameter -D_GNU_SOURCE -DLIBDPKG_VOLATILE_API -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -Wformat -Werror=format-security -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -o fapolicyd-cli cli/fapolicyd_cli-fapolicyd-cli.o cli/fapolicyd_cli-file-cli.o  ./.libs/libfapolicyd.a -lpthread -llmdb -lseccomp -lcap-ng -lmagic -lcrypto -ludev -ldpkg -lmd -pthread
libtool: link: gcc -fPIE -DPIE -g -W -Wall -Wshadow -Wundef -Wno-unused-result -Wno-unused-parameter -D_GNU_SOURCE -DLIBDPKG_VOLATILE_API -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -Wformat -Werror=format-security -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -o fapolicyd daemon/fapolicyd-fapolicyd.o daemon/fapolicyd-mounts.o daemon/fapolicyd-notify.o  ./.libs/libfapolicyd.a -lpthread -llmdb -lseccomp -lcap-ng -lmagic -lcrypto -ludev -ldpkg -lmd -pthread
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(dbmodify.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(db-ctrl-format.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(db-fsys-files.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(debug.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(dump.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(ehandle.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(fsys-hash.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(log.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(mustlib.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(nfmalloc.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(pager.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(parse.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(parsehelp.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(pkg-hash.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(progname.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(program.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(progress.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(report.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(subproc.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(triglib.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(trigdeferred.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(arch.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(color.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(dbdir.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(fields.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(fsys-dir.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(i18n.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(pkg-spec.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(trignote.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(dbmodify.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(db-ctrl-format.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(db-fsys-files.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(debug.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(dump.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(ehandle.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(fsys-hash.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(log.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(mustlib.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(nfmalloc.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(pager.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(parse.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(parsehelp.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(pkg-hash.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(progname.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(program.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(progress.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(report.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(subproc.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(triglib.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(trigdeferred.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(arch.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(color.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(dbdir.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(fields.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(fsys-dir.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(i18n.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(pkg-spec.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/13/../../../hppa-linux-gnu/libdpkg.a(trignote.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: BFD (GNU Binutils for Debian) 2.41 internal error, aborting at ../../bfd/elf32-hppa.c:3848 in elf32_hppa_relocate_section

/usr/bin/ld: Please report this bug.

collect2: error: ld returned 1 exit status
/usr/bin/ld: BFD (GNU Binutils for Debian) 2.41 internal error, aborting at ../../bfd/elf32-hppa.c:3848 in elf32_hppa_relocate_section

/usr/bin/ld: Please report this bug.

Full log is here:
https://buildd.debian.org/status/fetch.php?pkg=fapolicyd&arch=hppa&ver=1.3.2-1&stamp=1699232030&raw=0

The objects in libdpkg.a were not compiled with -fPIC.  PIE executables
need to be linked against position independent libraries.  There needs to
be either a shared version of libdpkg or the objects in libdpkg.a need
to be built with -fPIC.

The code generated on hppa is not position independent by default.

Regards,
Dave Anglin

-- System Information:
Debian Release: trixie/sid
  APT prefers buildd-unstable
  APT policy: (500, 'buildd-unstable'), (500, 'unstable')
Architecture: hppa (parisc64)

Kernel: Linux 6.1.61+ (SMP w/4 CPU threads)
Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)