configure | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
Check vhost-user is available when building vhost-user-blk-server.
This fixes:
$ ../configure \
--disable-vhost-user --enable-vhost-user-blk-server && \
make qemu-nbd
...
[505/505] Linking target qemu-nbd
FAILED: qemu-nbd
cc -o qemu-nbd qemu-nbd.p/qemu-nbd.c.o -Wl,--as-needed -Wl,--no-undefined -pie -Wl,--whole-archive libblockdev.fa libblock.fa libcrypto.fa libauthz.fa libqom.fa libio.fa -Wl,--no-whole-archive -Wl,--warn-common -Wl,-z,relro -Wl,-z,now -m64 -fstack-protector-strong -Wl,--start-group libqemuutil.a libblockdev.fa libblock.fa libcrypto.fa libauthz.fa libqom.fa libio.fa @block.syms -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -pthread -lgnutls -lutil -lm -lgthread-2.0 -lglib-2.0 -lbz2 -lgthread-2.0 -lglib-2.0 -lssh -lrbd -lrados -lcurl -lxml2 -lzstd -lacl -lgfapi -lglusterfs -lgfrpc -lgfxdr -luuid -laio /usr/lib64/libz.so -L/usr/lib64/iscsi -liscsi -lnettle -lgnutls -lpam -Wl,--end-group
/usr/bin/ld: libblockdev.fa(block_export_vhost-user-blk-server.c.o): in function `vu_blk_process_vq':
block/export/vhost-user-blk-server.c:203: undefined reference to `vu_get_queue'
/usr/bin/ld: block/export/vhost-user-blk-server.c:208: undefined reference to `vu_queue_pop'
/usr/bin/ld: libblockdev.fa(block_export_vhost-user-blk-server.c.o): in function `vu_blk_queue_set_started':
block/export/vhost-user-blk-server.c:228: undefined reference to `vu_get_queue'
/usr/bin/ld: libblockdev.fa(block_export_vhost-user-blk-server.c.o): in function `vu_blk_req_complete':
block/export/vhost-user-blk-server.c:55: undefined reference to `vu_queue_push'
/usr/bin/ld: block/export/vhost-user-blk-server.c:56: undefined reference to `vu_queue_notify'
/usr/bin/ld: libblockdev.fa(block_export_vhost-user-blk-server.c.o): in function `vu_blk_queue_set_started':
block/export/vhost-user-blk-server.c:229: undefined reference to `vu_set_queue_handler'
/usr/bin/ld: libqemuutil.a(util_vhost-user-server.c.o): in function `vu_client_trip':
util/vhost-user-server.c:176: undefined reference to `vu_dispatch'
/usr/bin/ld: util/vhost-user-server.c:180: undefined reference to `vu_deinit'
/usr/bin/ld: libqemuutil.a(util_vhost-user-server.c.o): in function `vu_accept':
util/vhost-user-server.c:291: undefined reference to `vu_init'
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
make: *** [Makefile:171: run-ninja] Error 1
Now we get:
$ ../configure \
--disable-vhost-user --enable-vhost-user-blk-server && \
ERROR: --enable-vhost-user-blk-server requires --enable-vhost-user
Fixes: bc15e44cb21 ("configure: introduce --enable-vhost-user-blk-server")
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
Since v1:
- Addressed Thomas review comments
https://lists.gnu.org/archive/html/qemu-devel/2020-11/msg02188.html
Supersedes: <20201106190409.10571-1-philmd@redhat.com>
---
configure | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/configure b/configure
index 805f7791503..39b65dcd070 100755
--- a/configure
+++ b/configure
@@ -2375,6 +2375,10 @@ test "$vhost_user_fs" = "" && vhost_user_fs=$vhost_user
if test "$vhost_user_fs" = "yes" && test "$vhost_user" = "no"; then
error_exit "--enable-vhost-user-fs requires --enable-vhost-user"
fi
+test "$vhost_user_blk_server" = "" && vhost_user_blk_server=$vhost_user
+if test "$vhost_user_blk_server" = "yes" && test "$vhost_user" = "no"; then
+ error_exit "--enable-vhost-user-blk-server requires --enable-vhost-user"
+fi
#vhost-vdpa backends
test "$vhost_net_vdpa" = "" && vhost_net_vdpa=$vhost_vdpa
if test "$vhost_net_vdpa" = "yes" && test "$vhost_vdpa" = "no"; then
@@ -2389,7 +2393,6 @@ if test "$vhost_net" = ""; then
fi
# libvhost-user is Linux-only
-test "$vhost_user_blk_server" = "" && vhost_user_blk_server=$linux
if test "$vhost_user_blk_server" = "yes" && test "$linux" = "no"; then
error_exit "--enable-vhost-user-blk-server is only available on Linux"
fi
--
2.26.2
On 11/9/20 3:03 PM, Philippe Mathieu-Daudé wrote: > Check vhost-user is available when building vhost-user-blk-server. > > This fixes: > > $ ../configure \ > --disable-vhost-user --enable-vhost-user-blk-server && \ > make qemu-nbd > ... > [505/505] Linking target qemu-nbd > FAILED: qemu-nbd > cc -o qemu-nbd qemu-nbd.p/qemu-nbd.c.o -Wl,--as-needed -Wl,--no-undefined -pie -Wl,--whole-archive libblockdev.fa libblock.fa libcrypto.fa libauthz.fa libqom.fa libio.fa -Wl,--no-whole-archive -Wl,--warn-common -Wl,-z,relro -Wl,-z,now -m64 -fstack-protector-strong -Wl,--start-group libqemuutil.a libblockdev.fa libblock.fa libcrypto.fa libauthz.fa libqom.fa libio.fa @block.syms -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -pthread -lgnutls -lutil -lm -lgthread-2.0 -lglib-2.0 -lbz2 -lgthread-2.0 -lglib-2.0 -lssh -lrbd -lrados -lcurl -lxml2 -lzstd -lacl -lgfapi -lglusterfs -lgfrpc -lgfxdr -luuid -laio /usr/lib64/libz.so -L/usr/lib64/iscsi -liscsi -lnettle -lgnutls -lpam -Wl,--end-group > /usr/bin/ld: libblockdev.fa(block_export_vhost-user-blk-server.c.o): in function `vu_blk_process_vq': > block/export/vhost-user-blk-server.c:203: undefined reference to `vu_get_queue' > /usr/bin/ld: block/export/vhost-user-blk-server.c:208: undefined reference to `vu_queue_pop' > /usr/bin/ld: libblockdev.fa(block_export_vhost-user-blk-server.c.o): in function `vu_blk_queue_set_started': > block/export/vhost-user-blk-server.c:228: undefined reference to `vu_get_queue' > /usr/bin/ld: libblockdev.fa(block_export_vhost-user-blk-server.c.o): in function `vu_blk_req_complete': > block/export/vhost-user-blk-server.c:55: undefined reference to `vu_queue_push' > /usr/bin/ld: block/export/vhost-user-blk-server.c:56: undefined reference to `vu_queue_notify' > /usr/bin/ld: libblockdev.fa(block_export_vhost-user-blk-server.c.o): in function `vu_blk_queue_set_started': > block/export/vhost-user-blk-server.c:229: undefined reference to `vu_set_queue_handler' > /usr/bin/ld: libqemuutil.a(util_vhost-user-server.c.o): in function `vu_client_trip': > util/vhost-user-server.c:176: undefined reference to `vu_dispatch' > /usr/bin/ld: util/vhost-user-server.c:180: undefined reference to `vu_deinit' > /usr/bin/ld: libqemuutil.a(util_vhost-user-server.c.o): in function `vu_accept': > util/vhost-user-server.c:291: undefined reference to `vu_init' > collect2: error: ld returned 1 exit status > ninja: build stopped: subcommand failed. > make: *** [Makefile:171: run-ninja] Error 1 > > Now we get: > > $ ../configure \ > --disable-vhost-user --enable-vhost-user-blk-server && \ > ERROR: --enable-vhost-user-blk-server requires --enable-vhost-user > > Fixes: bc15e44cb21 ("configure: introduce --enable-vhost-user-blk-server") > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> > --- > Since v1: > - Addressed Thomas review comments > https://lists.gnu.org/archive/html/qemu-devel/2020-11/msg02188.html > > Supersedes: <20201106190409.10571-1-philmd@redhat.com> > --- > configure | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/configure b/configure > index 805f7791503..39b65dcd070 100755 > --- a/configure > +++ b/configure > @@ -2375,6 +2375,10 @@ test "$vhost_user_fs" = "" && vhost_user_fs=$vhost_user > if test "$vhost_user_fs" = "yes" && test "$vhost_user" = "no"; then > error_exit "--enable-vhost-user-fs requires --enable-vhost-user" > fi > +test "$vhost_user_blk_server" = "" && vhost_user_blk_server=$vhost_user > +if test "$vhost_user_blk_server" = "yes" && test "$vhost_user" = "no"; then > + error_exit "--enable-vhost-user-blk-server requires --enable-vhost-user" > +fi > #vhost-vdpa backends > test "$vhost_net_vdpa" = "" && vhost_net_vdpa=$vhost_vdpa > if test "$vhost_net_vdpa" = "yes" && test "$vhost_vdpa" = "no"; then > @@ -2389,7 +2393,6 @@ if test "$vhost_net" = ""; then > fi > > # libvhost-user is Linux-only > -test "$vhost_user_blk_server" = "" && vhost_user_blk_server=$linux Pfff I didn't meant to commit this hunk. I'll respin, sorry. > if test "$vhost_user_blk_server" = "yes" && test "$linux" = "no"; then > error_exit "--enable-vhost-user-blk-server is only available on Linux" > fi >
On Mon, Nov 9, 2020 at 3:07 PM Philippe Mathieu-Daudé <philmd@redhat.com> wrote: > > On 11/9/20 3:03 PM, Philippe Mathieu-Daudé wrote: > > Check vhost-user is available when building vhost-user-blk-server. > > > > This fixes: > > > > $ ../configure \ > > --disable-vhost-user --enable-vhost-user-blk-server && \ > > make qemu-nbd > > ... > > [505/505] Linking target qemu-nbd > > FAILED: qemu-nbd > > cc -o qemu-nbd qemu-nbd.p/qemu-nbd.c.o -Wl,--as-needed -Wl,--no-undefined -pie -Wl,--whole-archive libblockdev.fa libblock.fa libcrypto.fa libauthz.fa libqom.fa libio.fa -Wl,--no-whole-archive -Wl,--warn-common -Wl,-z,relro -Wl,-z,now -m64 -fstack-protector-strong -Wl,--start-group libqemuutil.a libblockdev.fa libblock.fa libcrypto.fa libauthz.fa libqom.fa libio.fa @block.syms -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -pthread -lgnutls -lutil -lm -lgthread-2.0 -lglib-2.0 -lbz2 -lgthread-2.0 -lglib-2.0 -lssh -lrbd -lrados -lcurl -lxml2 -lzstd -lacl -lgfapi -lglusterfs -lgfrpc -lgfxdr -luuid -laio /usr/lib64/libz.so -L/usr/lib64/iscsi -liscsi -lnettle -lgnutls -lpam -Wl,--end-group > > /usr/bin/ld: libblockdev.fa(block_export_vhost-user-blk-server.c.o): in function `vu_blk_process_vq': > > block/export/vhost-user-blk-server.c:203: undefined reference to `vu_get_queue' > > /usr/bin/ld: block/export/vhost-user-blk-server.c:208: undefined reference to `vu_queue_pop' > > /usr/bin/ld: libblockdev.fa(block_export_vhost-user-blk-server.c.o): in function `vu_blk_queue_set_started': > > block/export/vhost-user-blk-server.c:228: undefined reference to `vu_get_queue' > > /usr/bin/ld: libblockdev.fa(block_export_vhost-user-blk-server.c.o): in function `vu_blk_req_complete': > > block/export/vhost-user-blk-server.c:55: undefined reference to `vu_queue_push' > > /usr/bin/ld: block/export/vhost-user-blk-server.c:56: undefined reference to `vu_queue_notify' > > /usr/bin/ld: libblockdev.fa(block_export_vhost-user-blk-server.c.o): in function `vu_blk_queue_set_started': > > block/export/vhost-user-blk-server.c:229: undefined reference to `vu_set_queue_handler' > > /usr/bin/ld: libqemuutil.a(util_vhost-user-server.c.o): in function `vu_client_trip': > > util/vhost-user-server.c:176: undefined reference to `vu_dispatch' > > /usr/bin/ld: util/vhost-user-server.c:180: undefined reference to `vu_deinit' > > /usr/bin/ld: libqemuutil.a(util_vhost-user-server.c.o): in function `vu_accept': > > util/vhost-user-server.c:291: undefined reference to `vu_init' > > collect2: error: ld returned 1 exit status > > ninja: build stopped: subcommand failed. > > make: *** [Makefile:171: run-ninja] Error 1 > > > > Now we get: > > > > $ ../configure \ > > --disable-vhost-user --enable-vhost-user-blk-server && \ > > ERROR: --enable-vhost-user-blk-server requires --enable-vhost-user > > > > Fixes: bc15e44cb21 ("configure: introduce --enable-vhost-user-blk-server") > > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> > > --- > > Since v1: > > - Addressed Thomas review comments > > https://lists.gnu.org/archive/html/qemu-devel/2020-11/msg02188.html > > > > Supersedes: <20201106190409.10571-1-philmd@redhat.com> > > --- > > configure | 5 ++++- > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > diff --git a/configure b/configure > > index 805f7791503..39b65dcd070 100755 > > --- a/configure > > +++ b/configure > > @@ -2375,6 +2375,10 @@ test "$vhost_user_fs" = "" && vhost_user_fs=$vhost_user > > if test "$vhost_user_fs" = "yes" && test "$vhost_user" = "no"; then > > error_exit "--enable-vhost-user-fs requires --enable-vhost-user" > > fi > > +test "$vhost_user_blk_server" = "" && vhost_user_blk_server=$vhost_user > > +if test "$vhost_user_blk_server" = "yes" && test "$vhost_user" = "no"; then > > + error_exit "--enable-vhost-user-blk-server requires --enable-vhost-user" > > +fi > > #vhost-vdpa backends > > test "$vhost_net_vdpa" = "" && vhost_net_vdpa=$vhost_vdpa > > if test "$vhost_net_vdpa" = "yes" && test "$vhost_vdpa" = "no"; then > > @@ -2389,7 +2393,6 @@ if test "$vhost_net" = ""; then > > fi > > > > # libvhost-user is Linux-only > > -test "$vhost_user_blk_server" = "" && vhost_user_blk_server=$linux > > Pfff I didn't meant to commit this hunk. > I'll respin, sorry. Thomas reviewed v3 and finally v2 is better... > > > if test "$vhost_user_blk_server" = "yes" && test "$linux" = "no"; then > > error_exit "--enable-vhost-user-blk-server is only available on Linux" > > fi > > >
© 2016 - 2024 Red Hat, Inc.