Bug #3306: rbconfig.rb RPATHFLAG wrong for AIX
http://redmine.ruby-lang.org/issues/show/3306

Author: Perry Smith
Status: Open, Priority: Normal
Target version: 1.9.1
ruby -v: ruby 1.9.1p376 (2009-12-07 revision 26041) [powerpc-aix5.3.0.0]

When I do:

  gem install curb

(as an example), a shared library is created but the shared library can not load.  I tracked it back to the line in rbconfig.rb which is:

  CONFIG["RPATHFLAG"] = " -Wl,-blibpath:%1$-s"

This ends up producing -Wl,-blibpath:/usr/local/lib

on the final link.

This is incorrect because it does not include /usr/lib and is also a little bit dangerous for other reasons.  The flag should not be necessary unless the user is doing something really strange.  The libpath that was used at link time is buried into the executable.  The -blibpath flag overrides this with a new value.  Generally, it is not needed.  But, if you decide to use it, you need to include /usr/lib or it will not be searched and the load of the shared library will fail because very often something from another library is needed.

I changed my rbconfig.rb file to simpley:

  CONFIG["RPATHFLAG"] = ""

and it appears to be working for me.

I am not sure when this started.  I believe with p376 but I'm not sure.  My previous version was p243.


----------------------------------------
http://redmine.ruby-lang.org