From: KUBO T. <ku...@ji...> - 2002-08-20 16:58:35
|
Hi, Masao Mutoh <mu...@hi...> writes: >> (1) gnome_canvas_item_scale unresolved >> >> /usr/local/lib/ruby/site_ruby/1.6/gnome.rb:3:in `require': dlopen: /usr/local/lib/ruby/site_ruby/1.6/alpha-osf5.1/gnome.so: symbol "gnome_canvas_item_scale" unresolved - /usr/local/lib/ruby/site_ruby/1.6/alpha-osf5.1/gnome.so (LoadError) >> from /usr/local/lib/ruby/site_ruby/1.6/gnome.rb:3 >> from ./test.rb:1:in `require' >> from ./test.rb:1 > > Hmm, At least, in my environment(Linux/gnome-libs-1.4.1.2) it works fine. How about recompile ruby with the following patch and test Ruby-GNOME if your platform's ruby uses dlopen. ============================================== --- dln.c.orig Fri Aug 24 15:35:24 2001 +++ dln.c Wed Aug 21 00:12:30 2002 @@ -1273,7 +1273,7 @@ #endif /* Load file */ - if ((handle = (void*)dlopen(file, RTLD_LAZY|RTLD_GLOBAL)) == NULL) { + if ((handle = (void*)dlopen(file, RTLD_NOW|RTLD_GLOBAL)) == NULL) { goto failed; } ============================================== In my environment(Linux) I found unresolved symbol gtk_xmhtml_set_font_familty_fixed. To fix it, apply following patch: ============================================== --- gnome/extconf.rb.orig Tue Aug 20 08:11:00 2002 +++ gnome/extconf.rb Wed Aug 21 00:33:39 2002 @@ -12,7 +12,7 @@ config_cmd = with_config("gnome-config", "gnome-config") config_libs = "--libs" config_cflags = "--cflags" - config_library = "gnomeui" + config_library = "gnomeui gtkxmhtml" version = `#{config_cmd} --version` if not version.chomp.empty? then $libs += ' ' + `#{config_cmd} #{config_libs} #{config_library}`.chomp ============================================== Then I also found GTK_XMHTML as undefined symbol. ============================================== --- gnome/src/rbgtk-xmhtml.c.orig Sun Aug 18 19:00:47 2002 +++ gnome/src/rbgtk-xmhtml.c Wed Aug 21 00:37:26 2002 @@ -18,6 +18,7 @@ * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +#include <gtk-xmhtml/gtk-xmhtml.h> #include "rbgnome.h" VALUE gXmHTML; ============================================== Next, gnome_canvas_item_rotate... I don't fix it yet. > gnome_canvas_item_scale() is gnome-libs's API, > but error message says that it is not defined in your environment ... gnome_canvas_item_scale is declared in header file of gnome-libs. But it is not implemented in any file of gnome-libs-1.4.1.7. It will cause error also. Sorry. I didn't test it when I implemented Gnome::Canvas. |