As an experiment, I am attempting to build a more recent version of GNOME than 2.16.0 on CentOS 5.1. I've tried both garnome and jhbuild, and neither one works quite right. Jhbuild blows out looking for a dbus-glib-1 revision >= 0/74 (the release rev is 0.70), so I downloaded that and tried to build it. This results in the following error: gcc -g -O2 -Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wfloat-equal -Wsign-compare -o .libs/dbus-binding-tool dbus-binding-tool-glib.o dbus-glib-tool.o ./.libs/libdbus-gtool.a -L/lib64 ./.libs/libdbus-glib-1.so -ldbus-1 -lgobject-2.0 -lglib-2.0 /usr/lib/libexpat.so -lnsl /usr/lib/libexpat.so: could not read symbols: File in wrong format collect2: ld returned 1 exit status make[4]: *** [dbus-binding-tool] Error 1 make[4]: Leaving directory `/home/mhr/Download/dbus-glib-0.74/dbus' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/home/mhr/Download/dbus-glib-0.74/dbus' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/mhr/Download/dbus-glib-0.74/dbus' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/mhr/Download/dbus-glib-0.74' make: *** [all] Error 2 When I try to use garnome, it eventually runs into exactly the same error. I've checked /usr/lib/libexpat.so, and this is what I get: $ ls -l /usr/lib/libexpat.so lrwxrwxrwx 1 root root 27 Jan 8 13:11 /usr/lib/libexpat.so -> ../../lib/libexpat.so.0.5.0 $ ls -l /lib/libexpat.so.0.5.0 -rwxr-xr-x 1 root root 133056 Jan 6 2007 /lib/libexpat.so.0.5.0 $ file /lib/libexpat.so.0.5.0 /lib/libexpat.so.0.5.0: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), stripped When I look at this library with nm, lld and objdump, they all seem to be able to read it just fine. There is also the 64 bit version that lives in /ib64 and has a .ink from /usr/lib64, and that also reads fine. What did I miss here? Thanks. mhr
MHR wrote:> As an experiment, I am attempting to build a more recent version of > GNOME than 2.16.0 on CentOS 5.1. I've tried both garnome and jhbuild, > and neither one works quite right. Jhbuild blows out looking for a > dbus-glib-1 revision >= 0/74 (the release rev is 0.70), so I > downloaded that and tried to build it. This results in the following > error: > > gcc -g -O2 -Wall -Wchar-subscripts -Wmissing-declarations > -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align > -Wfloat-equal -Wsign-compare -o .libs/dbus-binding-tool > dbus-binding-tool-glib.o dbus-glib-tool.o ./.libs/libdbus-gtool.a > -L/lib64 ./.libs/libdbus-glib-1.so -ldbus-1 -lgobject-2.0 -lglib-2.0 > /usr/lib/libexpat.so -lnsl > /usr/lib/libexpat.so: could not read symbols: File in wrong format > collect2: ld returned 1 exit status > make[4]: *** [dbus-binding-tool] Error 1 > make[4]: Leaving directory `/home/mhr/Download/dbus-glib-0.74/dbus' > make[3]: *** [all-recursive] Error 1 > make[3]: Leaving directory `/home/mhr/Download/dbus-glib-0.74/dbus' > make[2]: *** [all] Error 2 > make[2]: Leaving directory `/home/mhr/Download/dbus-glib-0.74/dbus' > make[1]: *** [all-recursive] Error 1 > make[1]: Leaving directory `/home/mhr/Download/dbus-glib-0.74' > make: *** [all] Error 2 > > When I try to use garnome, it eventually runs into exactly the same error. > > I've checked /usr/lib/libexpat.so, and this is what I get: > > $ ls -l /usr/lib/libexpat.so > lrwxrwxrwx 1 root root 27 Jan 8 13:11 /usr/lib/libexpat.so -> > ../../lib/libexpat.so.0.5.0 > $ ls -l /lib/libexpat.so.0.5.0 > -rwxr-xr-x 1 root root 133056 Jan 6 2007 /lib/libexpat.so.0.5.0 > $ file /lib/libexpat.so.0.5.0 > /lib/libexpat.so.0.5.0: ELF 32-bit LSB shared object, Intel 80386, > version 1 (SYSV), stripped > > When I look at this library with nm, lld and objdump, they all seem to > be able to read it just fine. There is also the 64 bit version that > lives in /ib64 and has a .ink from /usr/lib64, and that also reads > fine. > > What did I miss here? > > Thanks. > > mhr > _______________________________________________ > CentOS mailing list > CentOS at centos.org > http://lists.centos.org/mailman/listinfo/centos >Howdy, Just a thought, do you have the expat-devel package installed? Thanks, Finnur
On Sun, May 25, 2008 at 01:12:30PM -0700, MHR wrote:> As an experiment, I am attempting to build a more recent version of > GNOME than 2.16.0 on CentOS 5.1. I've tried both garnome and jhbuild,... just my 1st and last warning: if you break your setup don't come complaining here :)> ... > gcc -g -O2 -Wall -Wchar-subscripts -Wmissing-declarations > -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align > -Wfloat-equal -Wsign-compare -o .libs/dbus-binding-tool > dbus-binding-tool-glib.o dbus-glib-tool.o ./.libs/libdbus-gtool.a > -L/lib64 ./.libs/libdbus-glib-1.so -ldbus-1 -lgobject-2.0 -lglib-2.0 > /usr/lib/libexpat.so -lnsl > /usr/lib/libexpat.so: could not read symbols: File in wrong format > collect2: ld returned 1 exit statusThe error message is quite clear.> ... > $ file /lib/libexpat.so.0.5.0 > /lib/libexpat.so.0.5.0: ELF 32-bit LSB shared object, Intel 80386, > version 1 (SYSV), strippedyou are running a 64 bits CentOS-5 machine and you are trying to link a 64 bits objects with a 32 bits shared lib.> What did I miss here?good luck. Tru -- Tru Huynh (mirrors, CentOS-3 i386/x86_64 Package Maintenance) http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xBEFA581B -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available URL: <http://lists.centos.org/pipermail/centos/attachments/20080525/5a5d1538/attachment-0005.sig>
On Sun, May 25, 2008 at 1:35 PM, Tru Huynh <tru at centos.org> wrote:> ... > just my 1st and last warning: if you break your setup don't come complaining > here :) >I presume you mean my GNOME setup, and yes, I know - there are instructions on both jhbuild and garnome on how to avoid that. Hopefully they are more effective that the build instructions.... )-;> > The error message is quite clear. > ... > you are running a 64 bits CentOS-5 machine and you are trying to > link a 64 bits objects with a 32 bits shared lib. >Actually, I respectfully disagree - the message is far too vague, although the implication may not be. However, that raises another question: why does the build (either one) not know the machine architecture on which it is running and therefore detect the proper library to which to link? Or do I have to fake it by replacing the links in /usr/lib with those from /usr/lib64? IOW: how do I (or does anyone) build GNOME (or even just dbus-glib) on a 64-bit platform?> good luck. >Thanks. mhr