[fxruby-users] undefined symbol

Joel VanderWerf vjoel at PATH.Berkeley.EDU
Sun Dec 5 18:36:44 EST 2004


Ok, the latest snapshots of ruby have fixed the st.h prototypes so that 
FXRuby-1.2.2 builds. But now I've got a new (actaully, old) problem.

$ ruby styledtext.rb
/usr/local/lib/ruby/site_ruby/1.8/i686-linux/fox12.so: 
/usr/local/lib/ruby/site_ruby/1.8/i686-linux/fox12.so: undefined symbol: 
_ZN8FXWindow10stringTypeE - 
/usr/local/lib/ruby/site_ruby/1.8/i686-linux/fox12.so (LoadError)
         from styledtext.rb:3

These are fresh builds of FXRuby-1.2.2 and fox-1.2.11 on linux using gcc 
3.2.2, ruby 1.8.2 (2004-11-18) [i686-linux].


I've had this problem before with new versions of Fox/FXRuby, but was 
never able to fix it. Here's some more information:

$ ldd /usr/local/lib/ruby/site_ruby/1.8/i686-linux/fox12.so
         libFOX-1.2.so.0 => /usr/local/lib/libFOX-1.2.so.0 (0x4066d000)
         ....

$ nm /usr/local/lib/libFOX-1.2.so.0 | grep stringType
0029eb94 R _ZN2FX8FXWindow10stringTypeE


So it appears that maybe symbol mangling is working differently between 
fox and fxruby?

   _ZN8FXWindow10stringTypeE is what FXRuby is looking for.

   _ZN2FX8FXWindow10stringTypeE is what Fox has generated.

I know little about C++ symbols but it looks like the latter symbol is 
in the FX namespace, but the former is not.

Any suggestions?


More information about the fxruby-users mailing list