View Single Post
Old 01-11-2007, 08:14 AM   #5
Antartica
Evangelist
Antartica ought to be getting tired of karma fortunes by now.Antartica ought to be getting tired of karma fortunes by now.Antartica ought to be getting tired of karma fortunes by now.Antartica ought to be getting tired of karma fortunes by now.Antartica ought to be getting tired of karma fortunes by now.Antartica ought to be getting tired of karma fortunes by now.Antartica ought to be getting tired of karma fortunes by now.Antartica ought to be getting tired of karma fortunes by now.Antartica ought to be getting tired of karma fortunes by now.Antartica ought to be getting tired of karma fortunes by now.Antartica ought to be getting tired of karma fortunes by now.
 
Antartica's Avatar
 
Posts: 423
Karma: 1517132
Join Date: Jun 2006
Location: Madrid, Spain
Device: quaderno, remarkable2, yotaphone2, prs950, iliad, onhandpc, newton
Quote:
Originally Posted by Adam B.
Here's one...

I'm trying to compile a package. When I run a ./configure, it complains that it needs gconf-2.0 and libgtkhtml. I've found and downloaded those packages. They in turn, require other gnome libraries. I've gotten frustrated and gave up...If I keep following the dependencies, I feel like I'm going to compile all of gnome to resolve these 2 packages. Or do I not need to compile these, but simply have the source available?
Ops! The precompiled libraries package only contains the libraries needed for compiling Motif apps and gtk+ 2.x apps.

Anyway, yours is a "Good question" :-).

Firstly, yes, you'll end compiling a lot of gnome libraries just to fullfill those two dependencies. For example, looking at the libgtkhtml library installed in the PC:
Code:
~$ ldd /usr/lib/libgtkhtml-2.so.0
        libxml2.so.2 => /usr/lib/libxml2.so.2 (0x40063000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x40177000)
        libz.so.1 => /usr/lib/libz.so.1 (0x401c8000)
        libgailutil.so.17 => /usr/lib/libgailutil.so.17 (0x401db000)
        libgnomecanvas-2.so.0 => /usr/lib/libgnomecanvas-2.so.0 (0x401e3000)
        libart_lgpl_2.so.2 => /usr/lib/libart_lgpl_2.so.2 (0x4020f000)
        libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x40225000)
        libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x4024b000)
        libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x40529000)
        libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x405a9000)
        libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x405c7000)
        libm.so.6 => /lib/libm.so.6 (0x405dd000)
        libpangoxft-1.0.so.0 => /usr/lib/libpangoxft-1.0.so.0 (0x405ff000)
        libpangox-1.0.so.0 => /usr/lib/libpangox-1.0.so.0 (0x40606000)
        libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x40611000)
        libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x4064b000)
        libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x4067f000)
        libdl.so.2 => /lib/libdl.so.2 (0x40683000)
        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x40686000)
        libc.so.6 => /lib/libc.so.6 (0x40706000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
        libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x4083a000)
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x40869000)
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x408d6000)
        libXrandr.so.2 => /usr/X11R6/lib/libXrandr.so.2 (0x4099d000)
        libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0x409a1000)
        libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x409a9000)
        libXft.so.2 => /usr/lib/libXft.so.2 (0x409b8000)
        libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x409cb000)
        libXrender.so.1 => /usr/lib/libXrender.so.1 (0x409d4000)
        libexpat.so.1 => /usr/lib/libexpat.so.1 (0x409dc000)
I've put in bold the ones that are clearly part of gnome. And I can have missed some O:-).

If you really, really want to compile gnome for the iliad, your best bet is using GARNOME ( http://www.gnome.org/projects/garnome/ ), as it is somewhat difficult to compile it "by hand". That will create a gnome environment in the home of your user.

In the iliad, you'll have to install it in a SD or CF and replicate the path you used to compile it with a symlink in the iliad.

Now, I'll try to dissuade you from doing so :-).

1. Gnome is HUGE. It contains a lot of libraries and data files.

2. Its slow, as every library that you add as a dependency for your program, is more work for the dynamic linker at program startup, and the iliad is not a 3Ghz computer.

3. It consumes a lot of memory (because of the huge quantity of libraries it brings to memory).

Ideally, you should aim for motif apps, gtk+2.x apps, GPE apps, SDL-based apps or just plain X (ace of penguins, for example).

If this doesn't answer your question, keep asking ;-).

EDIT: Re-reading my post... Well, it's not as it connot be done, If you want to try it, I'll assist you :-). Even without the Garnome approach, if you really only depend on gconf and libggtkhtml, it's not that hard (less than a dozen or so of libraries), but I'm not so sure that you will only need those two libraries (configure checks the one-at-a-time, and after you have that check fulfilled it will check the next dependency...)

Last edited by Antartica; 01-11-2007 at 08:20 AM.
Antartica is offline   Reply With Quote