qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] QEMU build breakage on ARM against Xen 4.9 caused by li


From: Anthony PERARD
Subject: Re: [Qemu-devel] QEMU build breakage on ARM against Xen 4.9 caused by libxendevicemodel
Date: Wed, 3 May 2017 17:48:38 +0100
User-agent: Mutt/1.8.2 (2017-04-18)

On Thu, Apr 20, 2017 at 11:05:33AM -0700, Stefano Stabellini wrote:
> On Thu, 20 Apr 2017, Paul Durrant wrote:
> > I think xencall should be part of the base xen_stable_libs anyway.
> 
> Yes, you are right. However I noticed that -lxencall needs to come after
> -lxendevicemodel. So, I'll have to move -lxendevicemodel before
> $xen_stable_libs, see below. I'll merge this patch into "configure:
> detect presence of libxendevicemodel", if that's OK.
> 
> diff --git a/configure b/configure
> index 99d6cbc..3133ef8 100755
> --- a/configure
> +++ b/configure
> @@ -1992,7 +1992,7 @@ if test "$xen" != "no" ; then
>    else
>  
>      xen_libs="-lxenstore -lxenctrl -lxenguest"
> -    xen_stable_libs="-lxenforeignmemory -lxengnttab -lxenevtchn"
> +    xen_stable_libs="-lxencall -lxenforeignmemory -lxengnttab -lxenevtchn"
>  
>      # First we test whether Xen headers and libraries are available.
>      # If no, we are done and there is no Xen support.
> @@ -2027,9 +2027,9 @@ int main(void) {
>    return 0;
>  }
>  EOF
> -        compile_prog "" "$xen_libs $xen_stable_libs -lxendevicemodel"
> +        compile_prog "" "$xen_libs -lxendevicemodel $xen_stable_libs"
>        then
> -      xen_stable_libs="$xen_stable_libs -lxendevicemodel"
> +      xen_stable_libs="-lxendevicemodel $xen_stable_libs"
>        xen_ctrl_version=40900
>        xen=yes
>      elif

Hey, now that this patch is merged, xen.git fail to build QEMU. (osstest
qemu-mainline branch fail.)

That's because -lxencall is not found because -L$path_to_libxencall is
missing in xen.git.

But I've notice something else, libxendevicemodel.so is not linked
against libxencall, that might be the root of the issues on arm.
(libxenctrl.so is linked against libxencall.)

Thought?


We probably need this patch in xen:

diff --git a/tools/libs/devicemodel/Makefile b/tools/libs/devicemodel/Makefile
index 55626a5049..81fa5a4ac4 100644
--- a/tools/libs/devicemodel/Makefile
+++ b/tools/libs/devicemodel/Makefile
@@ -63,7 +63,7 @@ libxendevicemodel.so.$(MAJOR): 
libxendevicemodel.so.$(MAJOR).$(MINOR)
        $(SYMLINK_SHLIB) $< $@
 
 libxendevicemodel.so.$(MAJOR).$(MINOR): $(PIC_OBJS) libxendevicemodel.map
-       $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -Wl,$(SONAME_LDFLAG) 
-Wl,libxendevicemodel.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) 
$(LDLIBS_libxentoollog) $(APPEND_LDFLAGS)
+       $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -Wl,$(SONAME_LDFLAG) 
-Wl,libxendevicemodel.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $(PIC_OBJS) 
$(LDLIBS_libxentoollog) $(LDLIBS_libxencall) $(APPEND_LDFLAGS)
 
 .PHONY: install
 install: build

-- 
Anthony PERARD



reply via email to

[Prev in Thread] Current Thread [Next in Thread]