libtool
[Top][All Lists]
Advanced

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

Re: -no-undefined vs gcc 4.6.0


From: Charles Wilson
Subject: Re: -no-undefined vs gcc 4.6.0
Date: Sat, 19 Mar 2011 12:17:21 -0400
User-agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.1.23) Gecko/20090812 Thunderbird/2.0.0.23 Mnenhy/0.7.6.666

On 3/19/2011 6:25 AM, LRN wrote:

> I expect to find a lot of libtool-using projects that will require such
> hacks or workarounds, because `unrecognized option  '-no-undefined'' is
> very common.

Ah, but actually -no-undefined should be added by the upstream
maintainers, in Makefile.am, to libfoo_la_LDFLAGS.  It is a
*description* of the library -- which is true regardless of the host
platform the library is being built for.

It is a claim by the library designer that: "This library, when linked,
will not reference any symbols, unless they are defined either in its
own source objects or in other explicitly listed dependencies"

In order to build a library on win32/cygwin, libtool requires that the
library designer assure it of this fact.

So, either a library DOES or DOES NOT satisfy the claim: if it doesn't,
then it can't be built on windows without massive surgery. If it does,
then it does no harm to tell ALL platforms that it does so -- thus,
upstream should add -no-undefined to their Makefile.am/libfoo_la_LDFLAGS.

This "declaration" is usually NOT passed via an explicit variable
statement on the make or configure command line.

--
Chuck



reply via email to

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