Hi Orion:

I assume you meant to make your comment to the list, and it is an interesting
point in any case so that is why I am replying to the list.

On 2007-03-16 15:41-0600 Orion Poplawski wrote:

> Alan W. Irwin wrote:
>> Hi Orion:
>> 
>> I am glad to hear my changes now work for you on Fedora.  Thanks for your 
>> testing help on that platform.
>> 
>> On 2007-03-15 11:14-0600 Orion Poplawski wrote:
>> 
>>> My question is, since it does not appear that you directly specify 
>>> libgnat anywhere in the make commands, why even look for it?
>> 
>> It is needed to build libplplotada(d).  See the use of GNAT_LIB in
>> bindings/ada/CMakeLists.txt.  You should notice a -lgnat(-4.1) in the
>> corresponding make output.
>
> But if I remove it, everything still seems to work fine.  ada programs built 
> with gnatmake against libplplotada(d) will also be linked automatically 
> against the appropriate libgnat.

Linux is pretty good at figuring out linking issues given minimal
information.  So you can typically flub the linking of libraries on Linux so
long as you have accurate linking information when creating executables.
But that nice behaviour is usually not characteristic of the linking
requirements of non-Linux platforms.  So in general I have always found the
best linking policy for any library is to link to all required libraries so
that all symbols get resolved (as revealed by ldd -r).  To avoid unresolved
symbols from the ldd -r test of libplplotadad it is necessary to
specifically link the gnat library.

To reduce the maintenance burden of keeping up with the versioning
(currently in Fedora but it may spread to other platforms) of the root name
of the gnat library, I have just made a commit to use several different
version numbers (i.e., NAMES gnat gnat-4.1 gnat-4.2 gnat-4.3) in
anticipation of future version changes. I far prefer this approach compared
to making exceptions to our "no unresolved symbols" library linking policy
since that policy has given excellent results on a wide variety of
platforms.

Alan
__________________________
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state implementation
for stellar interiors (freeeos.sf.net); PLplot scientific plotting software
package (plplot.org); the Yorick front-end to PLplot (yplot.sf.net); the
Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project
(lbproject.sf.net).
__________________________

Linux-powered Science
__________________________

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Plplot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to