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

Re: [Xen-devel] Parallel make supported?



root[xen-4.5.0-rc4]# ls -l tools/xenstore/libxenstore*
-rw-r--r-- 1 root root 98580 Dec 19 22:02 tools/xenstore/libxenstore.a
-rwxr-xr-x 1 root root 82624 Dec 19 22:02 tools/xenstore/libxenstore.so.3.0.3

Please see output of make -d -C tools/xenstore init-xenstore-domain attached - it's quite long uncompressed

PK

On 5 January 2015 at 16:01, Ian Campbell <Ian.Campbell@xxxxxxxxxx> wrote:
On Mon, 2014-12-29 at 13:01 +0000, Wei Liu wrote:
> Please don't top post.
>
> On Fri, Dec 19, 2014 at 10:09:31PM +0000, Peter Kay wrote:
> > Thanks, see attached :
> >
> > This is on Salix 14.1 running the 3.17.4 kernel. That's not particularly
> > relevant though, as I had exactly the same error on Debian using other
> > kernel versions.
> >
>
> Looking at your build log
>
> gcc  Â-pthread -Wl,-soname -Wl,libxenstore.so.3.0 -shared -o libxenstore.so.3.0.3 xs.opic xs_lib.opic
> ar rcs libxenstore.a xs.o xs_lib.o
> gcc xs_tdb_dump.o utils.o tdb.o talloc.o  Â-o xs_tdb_dump
> gcc xenstored_core.o xenstored_watch.o xenstored_domain.o xenstored_transaction.o xs_lib.o talloc.o utils.o tdb.o hashtable.o xenstored_posix.o  Â/home/peter/Downloads/xen-4.5.0-rc4/tools/xenstore/../../tools/libxc/libxenctrl.so -o xenstored
> gcc init-xenstore-domain.o libxenstore.so  Â/home/peter/Downloads/xen-4.5.0-rc4/tools/xenstore/../../tools/libxc/libxenctrl.so /home/peter/Downloads/xen-4.5.0-rc4/tools/xenstore/../../tools/libxc/libxenguest.so /home/peter/Downloads/xen-4.5.0-rc4/tools/xenstore/../../tools/xenstore/libxenstore.so -o init-xenstore-domain
> gcc: error: libxenstore.so: No such file or directory
> gcc: error: /home/peter/Downloads/xen-4.5.0-rc4/tools/xenstore/../../tools/xenstore/libxenstore.so: No such file or directory
> make[4]: *** [init-xenstore-domain] Error 1
> make[4]: Leaving directory `/home/peter/Downloads/xen-4.5.0-rc4/tools/xenstore'
> make[3]: *** [subdir-install-xenstore] Error 2
> make[3]: Leaving directory `/home/peter/Downloads/xen-4.5.0-rc4/tools'
> make[2]: *** [subdirs-install] Error 2
> make[2]: Leaving directory `/home/peter/Downloads/xen-4.5.0-rc4/tools'
> make[1]: *** [install-tools] Error 2
> make[1]: *** Waiting for unfinished jobs....
>
> libxenstore.so is missing. However Makefile dependency ensures the
> compilation of init-xenstore-domain does not proceed unless
> libxenstore.so exists.

Right. Specifically (quoting a select few lines from
tools/xenstore/Makefile):

    LIBXENSTORE := libxenstore.so
    init-xenstore-domain: init-xenstore-domain.o $(LIBXENSTORE)
    libxenstore.so: libxenstore.so.$(MAJOR)
    libxenstore.so.$(MAJOR): libxenstore.so.$(MAJOR).$(MINOR)
    libxenstore.so.$(MAJOR).$(MINOR): xs.opic xs_lib.opic

So it would be a make bug if init-xenstore-domain were linked without
having created libxenstore.so first, but that (such an obvious bug in
make) doesn't seem very likely.

Peter, what does
    ls -l tools/xenstore/libxenstore*
show?

Also "make -d -C tools/xenstore init-xenstore-domain" might give a clue
as to why make thinks it doesn't need to rebuild those objects.

If $(LIBXENSTORE) were unset then that might explain things, but I can't
see how that could happen, it must always be either libxenstore.so or
libxenstore.a. Changing the init-xenstore-domain rule to:
    init-xenstore-domain: init-xenstore-domain.o $(LIBXENSTORE)
        @echo init-xenstore-domain using $(LIBXENSTORE)
        $(CC) $^ $(LDFLAGS) $(LDLIBS_libxenctrl) $(LDLIBS_libxenguest) $(LDLIBS_libxenstore) -o $@ $(APPEND_LDFLAGS)
would confirm or deny that theory (nb before @echo needs to be a hard
tab).

Ian.


Attachment: xsdm.gz
Description: GNU Zip compressed data

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.