Re: Compiling Glib.pm
- From: "Turd Turtle" <turdturtle gmail com>
- To: muppet <scott asofyet org>, gtk-perl-list gnome org
- Subject: Re: Compiling Glib.pm
- Date: Wed, 30 May 2007 19:43:42 -0400
Hello,
Thanks for the help, but I've been trying various things but still stuck.. I'm not a Linux/Unix expert..
So, the linking step performs perfectly (this command from the Makefile):
gcc -shared
Glib.o GError.o GUtils.o GLog.o GType.o GBoxed.o GObject.o GValue.o GClosure.o GSignal.o GMainLoop.o GIOChannel.o GParamSpec.o GKeyFile.o GBookmarkFile.o gperl-gtypes.o -o blib/arch/auto/Glib/Glib.so -L/net/bmachine/x/rich/usr/local/lib -
lgobject-2.0 -lglib-2.0 -lgthread-2.0 -lrt
Note the: -L/net/bmachine/x/rich/usr/local/lib ; I installed the glib-2.12.12 libraries into /net/bmachine/x/rich/usr/local/lib
When I take out the -L/net/bmachine/x/rich/usr/local/lib flag, it does not link (cannot find libraries glib, gobject, gthread), so I know that it is not linking to /usr/lib (the machine's /usr/lib has
libglib-2.0.so.0.400.7 installed).
So I am not sure why I still get this error (since everything compiles perfectly AND I do link correctly):
INPUT> /usr/bin/perl -I blib/lib -I blib/arch -MGlib::GenPod -MGlib \
-e 'add_types ("doctypes"); $Glib::GenPod::COPYRIGHT=
"Copyright
(C) 2003-2007 by the gtk2-perl team.\n\nThis software is licensed under
the LGPL. See L<Glib> for a full notice.\n";
$Glib::GenPod::MAIN_MOD="Glib"; xsdoc2pod("build/doc.pl", "blib/lib", "build/podindex");'
OUTPUT>/usr/bin/perl: symbol lookup error: blib/arch/auto/Glib/Glib.so: undefined symbol: g_bookmark_file_error_quark
make: *** [build/podindex] Error 127
Thanks for any help again,
Rich
On 5/25/07,
muppet <scott asofyet org> wrote:
On May 25, 2007, at 7:19 PM, Turd Turtle wrote:
> How do I solve this error? Should I just roll back to a super early
> version of the c version glib that doesn't have
> gbookmarkfile.h ? this seems to be the header causing the
> incompability problem..
Are you sure that the glib headers you're picking up match the glib
libraries you're getting?
The gtk2-perl policy on version compatibility is to build in support
for whatever is available at compile time, which means whatever
headers we pick up. That is guaranteed to work with a library object
of that version or newer (thanks to gnome's ABI stability policy).
It sounds like you're picking up a newer version via your pkg-config
path than you're linking with.
Hints:
- The header include paths come from "pkg-config --cflags gobject-2.0"
- The link paths come from "pkg-config --libs gobject-2.0"
- When you attempt to *run*, you get what is in LD_LIBRARY_PATH. If
the directory listed in the output of pkg-config --libs is not in
LD_LIBRARY_PATH (or /etc/ld.so.conf), then you will have to
manipulate your environment by hand.
- If you're not doing anything special or abnormal, then your system
is misconfigured.
--
It's all very complicated and would take a scientist to explain it.
-- MST3K
[
Date Prev][Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]