[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: guile-gnome-platform-2.7.95
From: |
Andy Wingo |
Subject: |
Re: guile-gnome-platform-2.7.95 |
Date: |
Mon, 15 Nov 2004 18:57:15 +0200 |
Hi Greg,
On Thu, 2004-11-11 at 08:47 -0500, Greg Troxel wrote:
> I updated the pkgsrc-wip entry to 2.7.95 and rebuilt it on NetBSD/i386
> 2.0 with guile 1.6.4 and Gnome 2.8ish. A version of the canvas demo I
> had been playing with runs when invoked as 'guile-gnome-0 -s
> canvas-test.scm'.
Cool!
> Is there a reason (other than lack of a clean patch) to have to set
> LD_LIBRARY_PATH for the guile-gnome libraries? The (gnome gobject
> config) module exports *guile-gnome-gobject-lib-path*.
(gnome gobject) loads the library libguile-gnome-gobject-0 by absolute
path. There is no need for munging LD_LIBRARY_PATH for it.
(gnome gw ...) shlibs are loaded by unqualified name by the generated
g-wrap modules, so they need to have the path munged (jesus, I like that
word these days) for things to work. Fix this in g-wrap and we can
remove that. (It will push the guile-gnome version-specific dir.)
However, that leaves us with the fact that (gnome gw ...) shlibs *link*
to libguile-gnome-gobject-0, the library loaded dynamically by
(gnome gobject). Although it's installed in the normal $prefix/lib, if
$prefix isn't normal (e.g. /opt/guile-gnome), ld.so won't find the lib.
I munged it because it's easy and just works on the majority of
platforms. If you can prove we can rely on RTDL_GLOBAL or something,
this can be removed.
But I do reluctantly agree LD_... is hackish. I don't know of any
program that does this -- maybe openoffice, but that's no model.
> I removed LD_LIBRARY_PATH, but lose on libgw-guile-gnome-lib.
> It's in /usr/pkg/lib/guile-gnome-0, of course, which is the value of
> the variable above.
>
> Is this the g-wrap complexity, where a name without a dir is passed
> into g-wrap code, that you just mailed me about?
Yup. Not complexity: deficiency, I think.
> It seems that in /usr/pkg/share/guile-gnome-0/gnome/gw/glib.scm, we
> could (use-modules (gnome gobject config)), have that module define a
> guile-gnome-dynamic-link [...]
Fix g-wrap, and we don't have this problem any more.
> LD_LIBRARY_PATH (which won't work on suid binaries...).
GTK+ won't run SUID. See the faq for details. This doesn't leave you
with all that much, and what you have probably isn't secure anyway.
Regards,
--
Andy Wingo <address@hidden>
http://ambient.2y.net/wingo/