On Wed, 9 Dec 2020 at 18:10, Michael S. Tsirkin <[email protected]> wrote: > > From: Marc-André Lureau <[email protected]> > > By making libvhost-user a subproject, check it builds > standalone (without the global QEMU cflags etc). > > Note that the library still relies on QEMU include/qemu/atomic.h and > linux_headers/. > > Signed-off-by: Marc-André Lureau <[email protected]> > Message-Id: <[email protected]> > Reviewed-by: Michael S. Tsirkin <[email protected]> > Signed-off-by: Michael S. Tsirkin <[email protected]>
Hi. This commit (now 0df750e9d3a5fea5e1 in master) seems to have broken building the system emulator with --static: it now fails at final link (of all binaries, not just this test binary) with: cc -o tests/check-qlist tests/check-qlist.p/check-qlist.c.o -Wl,--as-needed -Wl,--no-undefined -Wl,--warn-common -Wl,-z,relro -Wl,-z,now -static -m64 -fstack-protector-strong -Wl,--start-group libqemuutil.a subprojects/libvhost-user/libvhost-user-glib.a subprojects/libvhost-user/libvhost-user.a -pthread -lutil -lm -lgthread-2.0 -lglib-2.0 -lpcre /usr/lib/x86_64-linux-gnu/libglib-2.0.so -Wl,--end-group /usr/bin/ld: attempted static link of dynamic object `/usr/lib/x86_64-linux-gnu/libglib-2.0.so' collect2: error: ld returned 1 exit status because it's somehow ended up with the absolute path to the dynamic library version of libglib in the link options rather than the static library version (or better still, just -lglib !). Looking at the commit, it's not clear to me why the vhost-user changes have resulted in all binaries getting a change to their link line. Paolo ? thanks -- PMM
