Am 07.12.18 um 19:12 schrieb Andreas Schwab:
On Dez 07 2018, Till Dörges
wrote: Problem now is, the %{__make} fails when trying to link the final binary with lots of "undefined reference to" symbols from the external proprietary lib.
That's probably due to SUSE_ASNEEDED, see https://build.opensuse.org/package/view_file/openSUSE:Factory/binutils/binut... and https://github.com/openSUSE/post-build-checks/blob/master/suse-buildsystem.s.... The right way to fix that is to reorder the linker command line so that libraries appear after the objects that reference their symbols.
Thanks for the incredibly quick answer. Your guess was correct. :-) After manually moving -l<lib1> -l<lib2> to the end of linker command line, linking works. The problem that remains now is that the application in question is using autotools/automake. AFAIK there's now way to change the *order* of command line options/parameters. The Makefile.am has something like xxx_SOURCES = a.c b.c xxx_LDFLAGS = -m64 -lpthread ... So I can of course change the options but not their position in the command line. Or is there a way to do that? Alternatively, how do I get rid of SUSE_ASNEEDED during the build process? Is simply calling 'unset SUSE_ASNEEDED' in %build enough? Thanks and regards -- Till -- Dipl.-Inform. Till Dörges doerges@pre-sense.de Tel. +49 - 40 - 244 2407 - 0 Fax +49 - 40 - 244 2407 - 24 PRESENSE Technologies GmbH Sachsenstr. 5, D-20097 HH Geschäftsführer/Managing Directors AG Hamburg, HRB 107844 Till Dörges, Jürgen Sander USt-IdNr.: DE263765024 -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org