Yes, that's right.  I'm currently using cmake with RPATH, but from what I've 
been reading the RUNPATH header is now the more preferred approach.  If the 
user does not set LD_LIBRARY_PATH, the RUNPATH header should take effect, but 
if the user DOES wish to overload your libraries, they can go ahead and set 
LD_LIBRARY_PATH themselves assuming that they know what they are doing.  

This would help in our testing, as my RPATH settings have screwed up a few of 
my testers as they thought they were shuffling libraries around, but in fact my 
RPATH silently made their efforts for naught.

Thank you for the suggestion on modifying the linker flags myself; that sounds 
feasible.  I had also thought of running the 'chrpath' 
<http://linux.die.net/man/1/chrpath> utility as a post-processing step on my 
executables to manually change RPATH's into RUNPATH's, but I'm not quite sure 
how to write this in CMake yet.  Wanted to check first if CMake had 
undocumented or planned settings first.

Kent

-----Original Message-----
From: David Cole [mailto:david.c...@kitware.com] 
Sent: Wednesday, August 17, 2011 2:13 PM
To: Knox, Kent
Cc: cmake@cmake.org
Subject: Re: [CMake] RPATH/RUNPATH

There is presently no explicit RUNPATH support in CMake. And no immediate plans 
to add any support. In fact, your question is the first time I've even noticed 
that RPATH and RUNPATH are two distinct things...

Searching yielded these explanatory blog posts:
  http://fwarmerdam.blogspot.com/2010/12/rpath-runpath-and-ldlibrarypath.html
  http://www.physics.drexel.edu/~wking/unfolding-disasters/posts/rpath/

If you would like to encode a RUNPATH into a library or executable that you are 
building with CMake, you can try adjusting the compiler and linker flags as 
needed.

I take it you want to use RUNPATH so that there is still a path hint encoded 
into the built products, but that you are then able to override with 
LD_LIBRARY_PATH in a testing environment...?


On Wed, Aug 17, 2011 at 3:01 PM, Knox, Kent <kent.k...@amd.com> wrote:
> Any comments on CMake support or planned support for RUNPATH?
>
> -----Original Message-----
> From: David Cole [mailto:david.c...@kitware.com]
> Sent: Wednesday, August 17, 2011 1:57 PM
> To: Knox, Kent
> Cc: cmake@cmake.org
> Subject: Re: [CMake] RPATH/RUNPATH
>
> You can use CMake's RPATH related properties to put a path containing 
> "$ORIGIN" into the final installed executable, and it will work as long as 
> the underlying OS library loader supports ORIGIN. From what I understand, 
> ORIGIN support is not uniformly available in all loaders...
>
> Does that answer your question?
>
>
> On Wed, Aug 17, 2011 at 2:19 PM, Knox, Kent <kent.k...@amd.com> wrote:
>> Yes, I have read this link (before my list inquiry) and it does not answer 
>> my questions.  At least, I could not derive anything from it relating to 
>> RUNPATH or $ORIGIN support.  Thanks for the answer though.
>>
>> -----Original Message-----
>> From: David Cole [mailto:david.c...@kitware.com]
>> Sent: Wednesday, August 17, 2011 11:37 AM
>> To: Knox, Kent
>> Cc: cmake@cmake.org
>> Subject: Re: [CMake] RPATH/RUNPATH
>>
>> Perhaps try googling "cmake rpath" ... ?
>>
>>  http://www.cmake.org/Wiki/CMake_RPATH_handling
>>
>>
>> On Wed, Aug 17, 2011 at 12:03 PM, Knox, Kent <kent.k...@amd.com> wrote:
>>> Is there any support or planned support in CMake for RUNPATH?  On a related 
>>> note, is it possible for CMake to set the RPATH/RUNPATH using $ORIGIN on 
>>> 'make install'?  This way the install directory can be self-referential and 
>>> moved as a unit around the filesystem?
>>>
>>> Kent
>
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at 
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at: 
> http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake
>


_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to