On 2013-12-14 17:59 , Ryan Schmidt wrote:
> 
> On Dec 13, 2013, at 21:14, Craig Treleaven wrote:
> 
>> I gave the new version of port-depcheck.sh a try...with VLC, see following.  
>> Very different results from the prior version.  As I've said, I'm not a 
>> C/C++ developer--the prior version reported a bunch of false positives due 
>> to "over-linking"?  In layman's terms, what's that?
> 
> Example:
> 
> php55 links with a library from the libxml2 port (libxml2.dylib)
> libxml2 links with a library from the xz port (liblzma.dylib)
> 
> Under MacPorts 2.1.x and earlier, php55 might be linked to liblzma.dylib 
> also, just because libxml2 is linked with it, even though php55 does not 
> itself use liblzma. I don’t happen to have a MacPorts 2.1 installation handy 
> anymore so I don’t know if these specific ports were actually affected by 
> this issue, but this is the general principle of what we call overlinking.
> 
> We fixed the problem in MacPorts 2.2 by clearing the dependency_libs line of 
> .la files as they’re installed, or as of Mavericks by deleting the .la files 
> entirely,

Libtool dependency_libs are not the only way overlinking can happen. It
happens any time you use -lfoo when linking but don't actually use any
symbols from libfoo.

> but you will not be completely rid of overlinking in all ports you have 
> installed until some distant future time when all ports have coincidentally 
> been updated to newer versions in the right order, or until you uninstall and 
> reinstall all ports from source. (Installing from a binary might get you an 
> overlinked binary from our packages server.)

Updating libpng (and removing all the false dependencies that were
previously added in response to the overlinking) would probably get us
most of the way there.

- Josh
_______________________________________________
macports-dev mailing list
macports-dev@lists.macosforge.org
https://lists.macosforge.org/mailman/listinfo/macports-dev

Reply via email to