Re: Problems with linker (ld)
site_archiver@lists.apple.com Delivered-To: darwin-dev@lists.apple.com Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:cc:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references; bh=oSVSV7qMDplIPr3Huv2J7qaHTnTqoZugMGS8bLPYmi8=; b=OOQw5wKjhy8CcMwek2U3gIa5a9iw5JZ2pl2qrpS3cvnEWD+Ujl6UzCsZK2+mRmqYpA EUjg4yvOxktetMOg7xuToUwo6WE1nOwyGXfIRWSZMHFv5BmZ+wMGrTcg2degm5nLiVek e+3CUYfF3WjgzumZaZDD9wCoNAskzKe/4FM60= Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:cc:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references; b=CfOI2qAuu1cm4bdeOjdZ3tDVVMaTm7dZDhdj54FdSIgnZQzQ7NkQjDlJaUhq/jtu3I Rnn4fvG3IDlPY+bdMEBYEOe2ejQcVfuNI3P2z3D68QNMmR8i9OMj1fxs8J1sPboeGyFD N4T8e7SNa/IPeiScrHEW4xVZ7QZnlSHaLNvfA= Well, Unfortunately that is not the problem... because the error I get are about some unresolved externals, and not library not found (that is the error you get when the linker can't find the right library). Interesting enough, when I try with a small library (typical hello world-style), everything works, but not with the xmlrpc-c library... I will continue investigating this issue... F On Wed, Jun 4, 2008 at 7:11 AM, Jean-Daniel Dupas <devlists@shadowlab.org> wrote:
is /usr/loca/lib in your library search path in Xcode target build settings ?
I don't think it is part of the default search path.
Le 4 juin 08 à 14:58, Fabrizio Bertocci a écrit :
I'm having a weird problem with the linker I cannot explain. Before filing it as a possible bug, I'd like to have your opinion on that.
Brief description: I'm building an executable (command-line) that requires some external libraries. Let's say I need to link (statically) with: /usr/local/lib/libfoo.a /usr/local/lib/libbar.a /usr/local/lib/libfoo++.a /usr/local/lib/libbar++.a
When I add those libraries to my Xcode project, Xcode end up passing them to the link phase using the -l<lib> form: -lfoo -lbar -lfoo++ -lbar++
Unfortunately, the link phase reports a bunch of unresolved symbols.
If I invoke by hand ld by specifying the static libs directly as input files instead of libraries everything works fine: ld ... /usr/local/lib/libfoo.a /usr/locallib/libbar.a /usr/local/lib/libfoo++.a /usr/local/lib/libbar++.a
Interested? If you want to reproduce it, download the xmlrpc-c library from Sourceforge (xmlrpc-c.sourceforge.net), build it and install it under /usr/local and try to build one of the example first using the form that uses the -l<lib> flag, and then with the other form.
In my case I also discovered that ONLY ONE library needs to be listed using /usr/local/lib/<blah>.a...
To be more specific, this is *NOT* working: ld <...> -lxmlrpc++ -lxmlrpc_server_abyss++ -lxmlrpc_server++ -lxmlrpc_server_abyss -lxmlrpc_server -lxmlrpc_abyss -lxmlrpc_util -lxmlrpc_xmlparse -lxmlrpc_xmltok -lxmlrpc
and this IS WORKING: -lxmlrpc++ -lxmlrpc_server_abyss++ -lxmlrpc_server++ -lxmlrpc_server_abyss -lxmlrpc_server -lxmlrpc_abyss -lxmlrpc_util -lxmlrpc_xmlparse -lxmlrpc_xmltok /usr/local/lib/libxmlrpc.a
Weird isn't it? Am I missing something? Is it really a bug ?
Thanks for your opinion. Fab
_______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (Darwin-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/site_archiver%40lists.appl... This email sent to site_archiver@lists.apple.com
participants (1)
-
Fabrizio Bertocci