On Fri, 18 Jul 2025 at 14:32, Laurent Vivier <[email protected]> wrote: > > The passt networking backend uses functions from the GIO library, > such as g_subprocess_launcher_new(), to manage its daemon process. > So, building with passt enabled requires GIO to be available. > > If we enable passt and disable gio the build fails during linkage with > undefined reference errors: > > /usr/bin/ld: libsystem.a.p/net_passt.c.o: in function > `net_passt_start_daemon': > net/passt.c:250: undefined reference to `g_subprocess_launcher_new' > /usr/bin/ld: net/passt.c:251: undefined reference to > `g_subprocess_launcher_take_fd' > /usr/bin/ld: net/passt.c:253: undefined reference to > `g_subprocess_launcher_spawnv' > /usr/bin/ld: net/passt.c:256: undefined reference to `g_object_unref' > /usr/bin/ld: net/passt.c:263: undefined reference to `g_subprocess_wait' > /usr/bin/ld: net/passt.c:268: undefined reference to > `g_subprocess_get_if_exited' > /usr/bin/ld: libsystem.a.p/net_passt.c.o: in function > `glib_autoptr_clear_GSubprocess': > /usr/include/glib-2.0/gio/gio-autocleanups.h:132: undefined reference to > `g_object_unref' > /usr/bin/ld: libsystem.a.p/net_passt.c.o: in function > `net_passt_start_daemon': > net/passt.c:269: undefined reference to `g_subprocess_get_exit_status' > > Fix this by adding an explicit weson dependency on GIO for the passt > option. > The existing dependency on linux is kept because passt is only available > on this OS. > > Reported-by: Thomas Huth <[email protected]> > Signed-off-by: Laurent Vivier <[email protected]>
I've picked this up via target-arm.next, and added some tags: Cc: [email protected] Fixes: 854ee02b222 ("net: Add passt network backend") Resolves: https://gitlab.com/qemu-project/qemu/-/issues/3121 -- PMM
