[NTLUG:Discuss] has anyone used Alexandria?

Kevin Brannen kbrannen at pwhome.com
Sat Dec 18 10:26:47 CST 2004


Bryan J. Smith wrote:

>On Fri, 2004-12-17 at 21:05, Kevin Brannen wrote:
>  
>
>>I've found a program called Alexandria (for book cataloging) that seems 
>>like it could be good.  See http://alexandria.rubyforge.org/.  Has 
>>anyone used it and can comment on what it's like?
>>Better still, has anyone ever installed it? (preferrably on an Suse 
>>distro but I'd take stories about it anywhere :-)  It's done in Ruby 
>>with GTK,
>>    
>>
>
>Actually, it doesn't look like GTK+, but GNOME specifically.  Not trying
>to be anal, but there is a difference because GTK+ does not require
>GNOME, but GNOME does use GTK+.
>  
>

OK, it's both. :-)

>>so I'm going thru Gnome hell again, trillions of libs with 
>>interdependencies and no end in sight...sigh.  If so, can you remember 
>>and comment on what it takes to get it installed and working?
>>    
>>
>
>For what distro?
>  
>

Suse 9.2

>...
>Otherwise the README lists:  
>
>Requirements
>------------
>    Ruby >= 1.8.0:              http://www.ruby-lang.org
>    GNOME >= 2.6:               http://www.gnome.org
>    Ruby/Amazon >= 0.8.3:       http://www.caliban.org/ruby/ruby-amazon.shtml
>    Ruby-GetText >= 0.6.1:      http://ponx.s5.xrea.com/hiki/ruby-gettext.html
>    Ruby-GNOME2 >= 0.10.1 [*]:  http://ruby-gnome2.sourceforge.jp
>
>    [*]: Required libraries are: Ruby/Libglade2, Ruby/Gnome2, Ruby/GdkPixbuf2
>                                 and Ruby/GConf2.
>
>Seems like gdkpixbuf2 (GTK+ developer kit), libglade2 (GTK+ GUI resource
>tool) and gnome2 (which would include gconf2) would be the dependencies,
>as well as the Ruby support dependencies.
>  
>

They make it sound so simple don't they?  That assumes you have 
pkg-config installed correctly (I did) and are using correctly (I 
wasn't, I needed to create PKG_CONFIG_PATH and set to to 2 dirs).  Not 
counting Ruby itself, I've had to install no less than 5 other packages 
off my DVD, which installed *at least* 9 more as dependencies; plus the 
3 Riby ones listed above.

With the help of a Ruby/Gnome person on IRC I managed to make it all 
compile ad install (I couldn't tell you everything he had me do if my 
life depended on it, the list was that long and unknown to me -- hey, I 
never done Ruby before. :-)  But it still won't run!

If I run it in a plain xterm, it says:

/usr/lib/ruby/site_ruby/1.8/alexandria/ui/about_dialog.rb:20: undefined 
superclass `About' (TypeError)
        from /usr/lib/ruby/site_ruby/1.8/alexandria/ui.rb:25:in `require'
        from /usr/lib/ruby/site_ruby/1.8/alexandria/ui.rb:25
        from /usr/lib/ruby/site_ruby/1.8/alexandria.rb:57:in `require'
        from /usr/lib/ruby/site_ruby/1.8/alexandria.rb:57
        from /usr/bin/alexandria:7:in `require'
        from /usr/bin/alexandria:7

which means it can't find some basic UI class (or so the guy told me).  
But if I set RUBYLIB to 
/usr/lib/ruby/1.8:/usr/lib/ruby/site_ruby/1.8/i686-linux and run it I get:

(process:21213): GLib-GObject-CRITICAL **: gtype.c:2253: initialization 
assertion failed, use g_type_init() prior to this function
/usr/bin/ruby: symbol lookup error: 
/usr/lib/ruby/site_ruby/1.8/i686-linux/gdk_pixbuf2.so: undefined symbol: 
rbgobj_define_class

which basically means it can't find glib2.0.so, or maybe it finds it in 
the wrong order, which stumped the IRC guy.  Until last night, I was 
going to say "I *will* make this work!"  I'm not so sure I'm going to 
take that attitude now. :-(  I may be invested enough time in it, and I 
should just give up and work on another program I found (Thokbook) that 
actually does work, but is a bit primitive -- which I can fix. :-)

This really makes me long for the days of C and X/Motif, as then all the 
support libs (minus X & Motif) I needed would be sub-dirs and readily 
available.  This also makes me more fully understand why some people 
think Linux is hard, something for me to keep in mind when I work on 
future packages for others.

Kevin



More information about the Discuss mailing list