qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v2] rules.mak: Fix DSO build by pulling in archi


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [PATCH v2] rules.mak: Fix DSO build by pulling in archive symbols
Date: Mon, 01 Sep 2014 13:28:13 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.0

Il 01/09/2014 12:59, Peter Maydell ha scritto:
> 
> warning: 
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm:
> no name list
> warning: 
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm:
> no name list
> warning: 
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm:
> no name list
>   LINK  qemu-nbd

Is this with --enable-modules or without?

Can you find out which invocations are printing the error?  It could be
one of "nm -P -g block/FILENAME.mo" or "nm -P -g libqemuutil.a" or "nm
-P -g libqemustub.a".

I found the error in
http://www.opensource.apple.com/source/cctools/cctools-855/misc/nm.c

        if(st == NULL || st->nsyms == 0){
            warning("no name list");
            return;
        }

I guess this could match the first part of this paragraph in the POSIX
spec: "If no symbolic information is available for a valid input file,
the nm utility shall report that fact, but not consider it an error
condition".  I guess we could use "2>&1" to shut it up, but it would be
nice to know what the problem is.

>> > +find-symbols = $(if $1, $(sort $(shell nm -P -g $1 | $2)))
>> > +defined-symbols = $(call find-symbols,$1,awk '$$2!="U"{print $$1}')
>> > +undefined-symbols = $(call find-symbols,$1,awk '$$2=="U"{print $$1}')
> Are you sure your nm invocations are portable?

Yes, http://pubs.opengroup.org/onlinepubs/9699919799/utilities/nm.html

nm [-APv] [-g|-u] [-t format] file...

-g
    Write only external (global) symbol information
-P
    Write information in a portable output format, as specified in the
    STDOUT section.

Paolo



reply via email to

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