Mark Bennett
1/11/2005 5:28:00 PM
Hi Yoshiki:
Just to update you and the rest of the list, I was able to get this
problem sorted out with a lot of help from Ara Howard.
Here's what I had to do to fix this problem...
1) Edit /etc/ld.so/conf
Red Hat boxes don't seem to include /usr/local/lib in their search path
so I added it along with my Ruby lib folder. My /etc/ld.so.conf now
looks like:
/usr/kerberos/lib
/usr/X11R6/lib
/usr/lib/qt-3.0.5/lib
/usr/lib/mysql
/usr/local/lib
/usr/local/lib/ruby/site_ruby/1.8/i686-linux
2) Run ldconfig
I ran ldconfig as root to update the ld.so search path
3) Rebuild rb-gsl
Followed the directions to recompile and install rb-gsl
4) Ran rb-gsl examples
When I ran the examples again they now worked with no problems. :-)
Hope this helps anyone else out there with the same problems! Thanks
for all the assistance.
-Mark
Yoshiki Tsunesada wrote:
> Mark,
>
> * I guess you use GCC 3.1: it warns "changing search order
> for system directory" when an option -I/usr/local/include
> is given. If you use newer(older) GCC, the warning won't
> appear.
> * The message you showed says, the shared object rb_gsl.so
> is not found in your system, but it is installed in
> /usr/local/lib/ruby/site_ruby/1.8/i686-linux/.
> As you shown, narray.so is also installed in the same
> place, and how about is it (or other Ruby wrappers of C
> libraries)? Is it possible to run scripts using NArray?
> I'm not sure the problem is of rb-gsl or of the system.
>
> Yoshiki
>
>On Tue, 11 Jan 2005 06:22:17 +0900, Mark Bennett wrote:
>
>
>>I'm trying to use rb-gsl in an application I'm writing and am able to
>>use it on Mac OS X but not Linux. On an old Red Hat 7.3 box I see
>>the following error messages when compiling use, 'ruby setup.rb
>>setup':
>>
>>gcc -fPIC -I../include -Wall -I/usr/local/include -I.
>>-I/usr/local/lib/ruby/1.8/i686-linux
>>-I/usr/local/lib/ruby/1.8/i686-linux
>>-I/home/mark/versioned/praxis/sbcalc/third_party/rb-gsl-1.6.0/ext
>>-c wavelet.c
>>cc1: warning: changing search order for system directory
>>"/usr/local/include"
>>cc1: warning: as it has already been specified as a non-system directory
>>
>>It says this for all files being compiled. When I try to run any of
>>the sample applications included with rb-gsl I see the message:
>>
>>/usr/local/lib/ruby/site_ruby/1.8/i686-linux/rb_gsl.so: libgsl.so.0:
>>cannot open shared object file: No such file or directory -
>>/usr/local/lib/ruby/site_ruby/1.8/i686-linux/rb_gsl.so (LoadError)
>> from /usr/local/lib/ruby/site_ruby/1.8/gsl.rb:1
>> from cheb.rb:2:in `require'
>> from cheb.rb:2
>>
>>This same procedure works just find on my Mac. I've run ldconfig to
>>make sure all my GSL libraries are found, and I run 'make test' after
>>installing GSL. All tests passed.
>>
>>Does anyone out there have a suggestion for what to do?
>>
>>Thanks!
>>
>>-Mark
>>
>>