Hi! I ran into this compilation error while compiling flatpak-builder with --prefer-static (the key point is the missing symbols atthe end of the log - please just skim):
cc -o src/flatpak-builder src/flatpak-builder.p/builder-cache.c.o src/flatpak-builder.p/builder-context.c.o src/flatpak-builder.p/builder-extension.c.o src/flatpak-builder.p/builder-flatpak-utils.c.o src/flatpak-builder.p/builder-git.c.o src/flatpak-builder.p/builder-main.c.o src/flatpak-builder.p/builder-manifest.c.o src/flatpak-builder.p/builder-module.c.o src/flatpak-builder.p/builder-options.c.o src/flatpak-builder.p/builder-post-process.c.o src/flatpak-builder.p/builder-sdk-config.c.o src/flatpak-builder.p/builder-source.c.o src/flatpak-builder.p/builder-source-archive.c.o src/flatpak-builder.p/builder-source-bzr.c.o src/flatpak-builder.p/builder-source-dir.c.o src/flatpak-builder.p/builder-source-extra-data.c.o src/flatpak-builder.p/builder-source-file.c.o src/flatpak-builder.p/builder-source-git.c.o src/flatpak-builder.p/builder-source-inline.c.o src/flatpak-builder.p/builder-source-patch.c.o src/flatpak-builder.p/builder-source-script.c.o src/flatpak-builder.p/builder-source-shell.c.o src/flatpak-builder.p/builder-source-svn.c.o src/flatpak-builder.p/builder-utils.c.o -Wl,--as-needed -Wl,--no-undefined -Wl,-O1 -march=skylake -O2 -fPIC -Wl,--start-group subprojects/libglnx/libglnx.a /usr/lib/libglib-2.0.a /usr/lib/libatomic.a -lm -pthread /usr/lib/libpcre2-8.a /usr/lib/../lib/libgio-2.0.a /usr/lib/../lib/libgobject-2.0.a /usr/lib/../lib/libglib-2.0.a /usr/lib/../lib/libatomic.a /usr/lib/../lib/libffi.a /usr/lib/../lib/libgmodule-2.0.a /usr/lib/../lib/libpcre2-8.a /usr/lib/../lib/libz.a /usr/lib/../lib/libmount.a /usr/lib/../lib/libblkid.a -L/usr/lib/../lib -ljson-glib-1.0 /usr/lib/libcurl.a /usr/lib/libssl.a /usr/lib/libcrypto.a /usr/lib/libzstd.a /usr/lib/libz.a /usr/lib/libelf.a /usr/lib/libxml2.a /usr/lib/liblzma.a -lpthread -L/usr/lib/../lib -lostree-1 /usr/lib/libyaml.a -Wl,--end-group /usr/bin/ld: /usr/lib/libelf.a(elf_begin.o): in function `file_read_elf': elf_begin.c:(.text+0x2c0): undefined reference to `eu_search_tree_init' /usr/bin/ld: elf_begin.c:(.text+0x428): undefined reference to `eu_search_tree_init' /usr/bin/ld: /usr/lib/libelf.a(elf_end.o): in function `elf_end': elf_end.c:(.text+0xb8): undefined reference to `eu_search_tree_fini' collect2: error: ld returned 1 exit status ninja: build stopped: subcommand failed. It seems to me that libelf.a has unresolved dependencies. I see that these symbols are defined in 'lib/libeu.a' but that does not get installed nor is it referenced in the .pc file for neither libdw nor libelf. I am not experienced with the package so this might be a simple mistake on my side. However, using static compilation seems to be controversial to most distros today (even LFS, which I am basing my distro on), and I suspect that I might just have run into an issue that nobody has seen because it is such an unusual usecase. Perhaps. 🙂 Anyways, any input would be appreciated! Kind regards, Henrik Holst