I’m trying to test FXRuby on Mandrake 8.2
I compile a fox library version 1.0.26 with no problem
Then compile the FXRuby-1.0.16 without problem
but when I try irb …
irb(main):001:0> require 'fox’
LoadError: /usr/lib/libcrypto.so.0: shared object not open -
/home/coquelle//lib/ruby/site_ruby/1.6/i686-linux/fox.so
from (irb):1:in `require’
from (irb):1
I’ve read some non soluced identical problem … and I don’t know what
to do now …
Anybody could advice please ???
LoadError: /usr/lib/libcrypto.so.0: shared object not open -
/home/coquelle//lib/ruby/site_ruby/1.6/i686-linux/fox.so
from (irb):1:in `require’
from (irb):1
This post:
http://www.ruby-talk.org/44338
suggests that you may be able to alter your LD_LIBRARY_PATH setting to
fix it.
I have recompiled openssl (libcrypto is in it) but no change.
I do not understand the message “shared object not open” !!!
Try
export LD_DEBUG=symbols
Look for the last lookup before dl_signal_error
I don’t knew this possibility … and I have some difficulties to
understand all the messages that gives the linker … I will look more
in details later
(strange that I can’t pipe all the logs in a file by 'ruby test.rb 2>&1
export LD_DEBUG=symbols
Look for the last lookup before dl_signal_error
with a file test.rb just containing " require ‘fox’ ", I do this
$ export LD_DEBUG=symbols
$ ruby test.rb > lib_lookup.txt 2>&1
the error should be in this lines … but what could I do ?
sorry to insist you, but I’m near to abandon GUI with Ruby :((
… or maybe change to another distribution of linux
19192: symbol=_ZN5FXApp9metaClassE; lookup in file=ruby
19192: symbol=_ZN5FXApp9metaClassE; lookup in file=/lib/libdl.so.2
19192: symbol=_ZN5FXApp9metaClassE; lookup in file=/lib/libcrypt.so.1
19192: symbol=_ZN5FXApp9metaClassE; lookup in file=/lib/libm.so.6
19192: symbol=_ZN5FXApp9metaClassE; lookup in file=/lib/libc.so.6
19192: symbol=_ZN5FXApp9metaClassE; lookup in file=/lib/ld-linux.so.2
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/home/coquelle//lib/ruby/site_ruby/1.6/i686-linux/fox.so
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/usr/lib/libFOX-1.0.so.0
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/usr/X11R6/lib/libGLU.so.1
19192: symbol=_ZN5FXApp9metaClassE; lookup in file=/usr/lib/libGL.so.1
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/usr/X11R6/lib/libX11.so.6
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/usr/X11R6/lib/libXext.so.6
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/usr/lib/libtiff.so.3
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/usr/lib/libjpeg.so.62
19192: symbol=_ZN5FXApp9metaClassE; lookup in file=/lib/libz.so.1
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/usr/lib/libpng12.so.0
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/usr/lib/libstdc++.so.3
19192: symbol=_ZN5FXApp9metaClassE; lookup in file=/lib/libc.so.6
19192: symbol=_ZN5FXApp9metaClassE; lookup in file=/lib/libgcc_s.so.1
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/usr/lib/libpng.so.3
19192: symbol=_ZN5FXApp9metaClassE; lookup in file=/lib/libm.so.6
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/usr/lib/libcups.so.2
19192: symbol=_ZN5FXApp9metaClassE; lookup in file=/lib/libnsl.so.1
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/usr/lib/libGLcore.so.1
19192: symbol=_ZN5FXApp9metaClassE; lookup in file=/lib/libdl.so.2
19192: symbol=_ZN5FXApp9metaClassE; lookup in file=/lib/ld-linux.so.2
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/usr/lib/libssl.so.0
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/usr/lib/libcrypto.so.0
19192: symbol=_dl_unload_cache; lookup in file=ruby
19192: symbol=_dl_unload_cache; lookup in file=/lib/libdl.so.2
19192: symbol=_dl_unload_cache; lookup in file=/lib/libcrypt.so.1
19192: symbol=_dl_unload_cache; lookup in file=/lib/libm.so.6
19192: symbol=_dl_unload_cache; lookup in file=/lib/libc.so.6
19192: symbol=_dl_unload_cache; lookup in file=/lib/ld-linux.so.2
19192: symbol=_dl_close; lookup in file=ruby
19192: symbol=_dl_close; lookup in file=/lib/libdl.so.2
19192: symbol=_dl_close; lookup in file=/lib/libcrypt.so.1
19192: symbol=_dl_close; lookup in file=/lib/libm.so.6
19192: symbol=_dl_close; lookup in file=/lib/libc.so.6
19192: symbol=_dl_debug_state; lookup in file=ruby
19192: symbol=_dl_debug_state; lookup in file=/lib/libdl.so.2
19192: symbol=_dl_debug_state; lookup in file=/lib/libcrypt.so.1
19192: symbol=_dl_debug_state; lookup in file=/lib/libm.so.6
19192: symbol=_dl_debug_state; lookup in file=/lib/libc.so.6
19192: symbol=_dl_debug_state; lookup in file=/lib/ld-linux.so.2
19192: symbol=_dl_signal_error; lookup in file=ruby
19192: symbol=_dl_signal_error; lookup in file=/lib/libdl.so.2
19192: symbol=_dl_signal_error; lookup in file=/lib/libcrypt.so.1
19192: symbol=_dl_signal_error; lookup in file=/lib/libm.so.6
19192: symbol=_dl_signal_error; lookup in file=/lib/libc.so.6
19192: symbol=_dl_signal_error; lookup in file=/lib/ld-linux.so.2
19192: symbol=dlerror; lookup in file=ruby
19192: symbol=dlerror; lookup in file=/lib/libdl.so.2
19192: symbol=strerror; lookup in file=ruby
19192: symbol=strerror; lookup in file=/lib/libdl.so.2
19192: symbol=strerror; lookup in file=/lib/libcrypt.so.1
19192: symbol=strerror; lookup in file=/lib/libm.so.6
19192: symbol=strerror; lookup in file=/lib/libc.so.6
19192: symbol=__strerror_r; lookup in file=ruby
19192: symbol=__strerror_r; lookup in file=/lib/libdl.so.2
19192: symbol=__strerror_r; lookup in file=/lib/libcrypt.so.1
19192: symbol=__strerror_r; lookup in file=/lib/libm.so.6
19192: symbol=__strerror_r; lookup in file=/lib/libc.so.6
19192: symbol=__dcgettext; lookup in file=ruby
19192: symbol=__dcgettext; lookup in file=/lib/libdl.so.2
19192: symbol=__dcgettext; lookup in file=/lib/libcrypt.so.1
19192: symbol=__dcgettext; lookup in file=/lib/libm.so.6
19192: symbol=__dcgettext; lookup in file=/lib/libc.so.6
19192: symbol=getenv; lookup in file=ruby
19192: symbol=getenv; lookup in file=/lib/libdl.so.2
19192: symbol=getenv; lookup in file=/lib/libcrypt.so.1
19192: symbol=getenv; lookup in file=/lib/libm.so.6
19192: symbol=getenv; lookup in file=/lib/libc.so.6
19192: symbol=setlocale; lookup in file=ruby
19192: symbol=setlocale; lookup in file=/lib/libdl.so.2
19192: symbol=setlocale; lookup in file=/lib/libcrypt.so.1
19192: symbol=setlocale; lookup in file=/lib/libm.so.6
19192: symbol=setlocale; lookup in file=/lib/libc.so.6
19192: symbol=__mempcpy; lookup in file=ruby
19192: symbol=__mempcpy; lookup in file=/lib/libdl.so.2
19192: symbol=__mempcpy; lookup in file=/lib/libcrypt.so.1
19192: symbol=__mempcpy; lookup in file=/lib/libm.so.6
19192: symbol=__mempcpy; lookup in file=/lib/libc.so.6
19192: symbol=__dcgettext; lookup in file=ruby
19192: symbol=__dcgettext; lookup in file=/lib/libdl.so.2
19192: symbol=__dcgettext; lookup in file=/lib/libcrypt.so.1
19192: symbol=__dcgettext; lookup in file=/lib/libm.so.6
19192: symbol=__dcgettext; lookup in file=/lib/libc.so.6
19192: symbol=__asprintf; lookup in file=ruby
19192: symbol=__asprintf; lookup in file=/lib/libdl.so.2
19192: symbol=__asprintf; lookup in file=/lib/libcrypt.so.1
19192: symbol=__asprintf; lookup in file=/lib/libm.so.6
19192: symbol=__asprintf; lookup in file=/lib/libc.so.6
19192: symbol=free; lookup in file=ruby
19192: symbol=free; lookup in file=/lib/libdl.so.2
19192: symbol=free; lookup in file=/lib/libcrypt.so.1
19192: symbol=free; lookup in file=/lib/libm.so.6
19192: symbol=free; lookup in file=/lib/libc.so.6
19192: symbol=free; lookup in file=/lib/ld-linux.so.2
19192: symbol=vsnprintf; lookup in file=ruby
19192: symbol=vsnprintf; lookup in file=/lib/libdl.so.2
19192: symbol=vsnprintf; lookup in file=/lib/libcrypt.so.1
19192: symbol=vsnprintf; lookup in file=/lib/libm.so.6
19192: symbol=vsnprintf; lookup in file=/lib/libc.so.6
19192: symbol=vsnprintf; lookup in file=/lib/ld-linux.so.2
19192: symbol=sigprocmask; lookup in file=ruby
19192: symbol=sigprocmask; lookup in file=/lib/libdl.so.2
19192: symbol=sigprocmask; lookup in file=/lib/libcrypt.so.1
19192: symbol=sigprocmask; lookup in file=/lib/libm.so.6
19192: symbol=sigprocmask; lookup in file=/lib/libc.so.6
19192: symbol=sigprocmask; lookup in file=/lib/ld-linux.so.2
19192: symbol=longjmp; lookup in file=ruby
19192: symbol=longjmp; lookup in file=/lib/libdl.so.2
19192: symbol=longjmp; lookup in file=/lib/libcrypt.so.1
19192: symbol=longjmp; lookup in file=/lib/libm.so.6
19192: symbol=longjmp; lookup in file=/lib/libc.so.6
19192: symbol=longjmp; lookup in file=/lib/ld-linux.so.2
19192: symbol=fwrite; lookup in file=ruby
19192: symbol=fwrite; lookup in file=/lib/libdl.so.2
19192: symbol=fwrite; lookup in file=/lib/libcrypt.so.1
19192: symbol=fwrite; lookup in file=/lib/libm.so.6
19192: symbol=fwrite; lookup in file=/lib/libc.so.6
19192: symbol=fwrite; lookup in file=/lib/ld-linux.so.2
19192: symbol=__write; lookup in file=ruby
19192: symbol=__write; lookup in file=/lib/libdl.so.2
19192: symbol=__write; lookup in file=/lib/libcrypt.so.1
19192: symbol=__write; lookup in file=/lib/libm.so.6
19192: symbol=__write; lookup in file=/lib/libc.so.6
19192: symbol=__write; lookup in file=/lib/ld-linux.so.2
test.rb:1:in `require’: /usr/lib/libcrypto.so.0: shared object not open
( 2>&1 means “redirect 2 to where 1 is currently redirected to” )
···
----- Original Message -----
From: Ludo
To: ruby-talk ML
Sent: Monday, November 25, 2002 10:34 AM
Subject: Re: FXRuby on Mandrake 8.2
On Mon, 2002-11-25 at 19:00, ts wrote:
I have recompiled openssl (libcrypto is in it) but no change.
I do not understand the message “shared object not open” !!!
Try
export LD_DEBUG=symbols
Look for the last lookup before dl_signal_error
I don’t knew this possibility … and I have some difficulties to understand all the messages that gives the linker … I will look more in details later
(strange that I can’t pipe all the logs in a file by ‘ruby test.rb 2>&1 >lib_lookup.txt’ …)
export LD_DEBUG=symbols
Look for the last lookup before dl_signal_error
with a file test.rb just containing " require 'fox' ", I do this
$ export LD_DEBUG=symbols
$ ruby test.rb > lib_lookup.txt 2>&1
the error should be in this lines ... but what could I do ?
sorry to insist you, but I'm near to abandon GUI with Ruby :((
... or maybe change to another distribution of linux :)
j’ai upgrade au glibc de la Mandrake 9.0,
le message est plus clair … mais je ne sais toujours pas quoi en faire
???
On Mon, 2002-11-25 at 19:00, ts wrote:
> I have recompiled openssl (libcrypto is in it) but no change.
> I do not understand the message "shared object not open" !!!
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/home/coquelle//lib/ruby/site_ruby/1.6/i686-linux/fox.so
19192: symbol=_ZN5FXApp9metaClassE; lookup in
file=/usr/lib/libFOX-1.0.so.0
Well, it seems to have a conflict between these 2 versions but why ???
Well, it seems to have a conflict between these 2 versions but why ???
Is it possible that the FOX library (libFOX.so) and the FXRuby extension
(fox.so) were compiled with different versions of g++? I know that for
Red Hat 8.0 and Mandrake 9.0 they upgraded to g++ 3.2 as the default
compiler.
I had 2 libFOX.so, and the one dynamicaly loaded was compile with
gcc-2.96, wheras my lib FXRuby (fox.so) was compile with gcc-3.2 (even
if I have just Mandrake8.2)
so there was a problem of symbols (FXApp.metaClass from libFOX.so under
gcc-2.96 is named FXApp9metaCLassE under gcc-3.2) … but the error
message from the linker at execution time wasn’t really clear :)) seems
to be clearer under glibc-2.2.5 …
thanks a lot to every body who guided my research ! ;))
ludo
ts wrote:
> Well, it seems to have a conflict between these 2 versions but why ???
Is it possible that the FOX library (libFOX.so) and the FXRuby extension
(fox.so) were compiled with different versions of g++? I know that for
Red Hat 8.0 and Mandrake 9.0 they upgraded to g++ 3.2 as the default
compiler.