On Wed, 29 Apr 2009, NotFound wrote:

> > LD_LIBRARY_PATH (or equivalent) will need to be manually set.  Then, after
> > install, LD_LIBRARY_PATH (or equivalent) will need to be set to include
> > the installed parrot library directory for every process that invokes
> > parrot.
> 
> I think that is the business of the packagers, or the final users that
> want to install from sources, to configure with a directory where his
> system can find it, or to set environment variables, use ldconfig, or
> whatever. This is a common scenario with common solutions.

Yes, which is why there is a perfectly good, common, sensible solution to 
this very common problem:  rpath.  I even contributed to implementing it 
in parrot's Configure system, being very careful to distinguish between 
the rpath needed for the build directory and the rpath needed for the 
installed version.  For the most part, it just works.

The problem detailed in TT #540 is that the installed versions of 
dynext/*.so incorrectly link to -lparrot in the build directory.  I 
actually suspect they shouldn't link to -lparrot at all, rendering this 
all moot.  However, given that they *do* try to link to -lparrot, the 
installed versions should link to the installed -lparrot.

Yes, I understand that setting --disable-rpath will work around this 
problem.  But it's a work-around, not a solution, and it's a work-around 
with other consequences.  Yes, I understand I can work around those other 
consequences.  My point is I shouldn't have to.

> Of course, there is always the risk of people installing in
> /usr/local/lib and not having that directory in the ldconfig paths and
> complain us. But every project in the world that use gnu autotools
> face the same risk and live with it.

For the most part, Parrot is already set up to automatically handle this 
correctly without any ldconfig path settings or LD_LIBRARY_PATH fiddling.  
It's only if you hit it with the --disable-rpath sledgehammer to work 
around the bug in TT #540 that you then have to add in the additional 
ldconfig or LD_LIBRARY_PATH workarounds.

-- 
    Andy Dougherty              [email protected]
_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-dev

Reply via email to