guile-gtk-general
[Top][All Lists]
Advanced

[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/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]