[llvm] r201921 - Use relative rpath so that the installation and build dirs are relocatable.
Tobias Grosser
tobias at grosser.es
Sat Feb 22 05:40:31 PST 2014
On 02/22/2014 05:01 AM, Rafael EspĂndola wrote:
>> Hi Raphael,
>>
>> this one broke the polly build, because the libraries we are linking (libisl
>> and libcloog) are not anymore in the rpath (and they are also not in the
>> LD_LIBRARY_PATH). Is this change intended? Do you have an idea how to
>> proceed? Is this a problem with your change, should I fix the Polly cmake or
>> should we now always put such libraries into the LD_LIBRARY_PATH? (changing
>> the buildbots may take a little).
>
> It is this one:
> http://lab.llvm.org:8011/builders/polly-amd64-linux/builds/15464/steps/test_polly/logs/stdio,
> right?
Yes.
> Was the rpath of LLVMPolly.so being set in some way?
I did not do anything specific. Also, when running 'grep -R rpath
tools/polly' only a couple of autoconf files match, but no file that
contains cmake.
> What was it?
>
> My
> understanding is that cmake was always setting it to the absolute path
> before, which looks to be
> /home/grosser/buildslave/polly-amd64-linux/llvm.obj/lib/. Now it
> should be $ORIGIN/../lib, which should be the same directory.
> Where is libisl.so.10?
/home/grosser/buildslave/polly-amd64-linux/cloog.install.lib
> Does it work when building with configure?
No, with configure it seems no rpath is set and I need to explicitly set
LD_LIBRARY_PATH. The cmake behaviour now matches the autoconf behaviour.
I earlier cmake behaviour was more convenient, but if there are reasons
to go with the autoconf behaviour we can probably do this.
In case this is necessary, I can change the buildcommands and ask Galina
to restart the buildbots on Monday.
> What is the rpath you get
> in LLVMPolly.so?
On my home system I got the following:
Without your patch applied:
$ objdump -x lib/LLVMPolly.so |grep RPATH
RPATH
/home/grosser/Projects/polly/build/lib:/store/grosser/Projects/polly/tools/install/cloog/lib:
With your patch applied:
$ objdump -x lib/LLVMPolly.so |grep RPATH
RPATH $ORIGIN/../lib
It seems the path that contains polly is lost.
Tobias
More information about the llvm-commits
mailing list