From:  <[email protected]> on behalf of Elizabeth Fischer
<[email protected]>
Subject:  Re: [easybuild] next EasyBuild conf call: Wed Jan 6th 2016, 5pm
CET

> As far as I know, LD_LIBRARY_PATH is considered evil:
>     http://xahlee.info/UnixResource_dir/_/ldpath.html
> 
> I agree, using RPATH avoids a lot of evil.  From the EasyBuild perspective,
> that is really needed to achieve the kind of compiler flexibility people want.

Totally agree with this one -- you REALLY want to set your compilers up to
set RPATHs to their runtime environment.  Do the EB-built compilers
currently do this?

> The goal would be for EasyBuild modules to NOT set LD_LIBRARY_PATH at all, to
> have it all be done via RPATH.  Since Spack already does this, EasyBuild would
> do well to copy the feature.

Or people could just use Spack :).  We generate modules but do not
presuppose them to exist.  I think it's a good policy.

> If one is successful in avoiding LD_LIBRARY_PATH (an excellent goal), then
> RPATH and RUNPATH are equilalent.  In that case, maybe RUNPATH would be a good
> idea --- it would allow the user to override RUNPATH by setting
> LD_LIBRARY_PATH in special cases; for example, to temporarily test things with
> a different version of a library.

Unless you have total control over your users' environments, you can't avoid
LD_LIBRARY_PATH.  They can set it, and all sorts of webpages and software
guides encourage people to set it.  This is why we like RPATH at LLNL -- we
can override the users, and even if they meander into a directory without
loading a module, they can still run everything.

-Todd




Reply via email to