GNOME Bugzilla – Bug 594128
build problems with lib64
Last modified: 2010-08-13 16:29:31 UTC
I used to build trunk with: ./autogen.sh --prefix=/usr CFLAGS="-ggdb" --libdir '/usr/lib64' --build x86_64 However, doing the same with ext branch compiles and install OK, but gthumb can't find the extensions: [mjc@xena gthumb]$ gthumb ** (gthumb:15711): WARNING **: Could not load the 'file_viewer' extension: Could not open the module `file_viewer`: /usr/lib64/gthumb-2.0/extensions/libfile_viewer.so: cannot open shared object file: No such file or directory ** (gthumb:15711): WARNING **: Could not load the 'comments' extension: Could not open the module `comments`: /usr/lib64/gthumb-2.0/extensions/libcomments.so: cannot open shared object file: No such file or directory ** (gthumb:15711): WARNING **: Could not load the 'image_rotation' extension: Could not open the module `image_rotation`: /usr/lib64/gthumb-2.0/extensions/libimage_rotation.so: cannot open shared object file: No such file or directory ... and so on ... Is this a bug, or do I need additional autogen parameters? - Mike
it doesn't find the extensions, you have to find out in what directory the extensions are actually installed
I don't understand what you mean. In gthumb/Makefile.am we have: extensions_dir = $(libdir)/gthumb-2.0/extensions but it seems that the extensions are not actually compiled to that location (which is /usr/lib64/gthumb-2.0/extensions). They are put in /usr/lib, not /usr/lib64. I think there is a makefile error somewhere. - Mike
I tried: ./autogen.sh --prefix=/opt/test/ CFLAGS="-ggdb" --libdir '/opt/test/lib64' --build x86_64 and it correctly installed the extensions in /opt/test/lib64/gthumb-2.0/extensions
But do the *.so files get installed? With ./autogen.sh --prefix=/usr CFLAGS="-ggdb" I see: [root@xena gthumb]# make install | grep libimage_rotation gtk-update-icon-cache: Cache file created successfully. make[1]: Circular gth-enum-types.h <- gth-enum-types.h dependency dropped. make[3]: Circular gth-enum-types.h <- gth-enum-types.h dependency dropped. make[4]: Circular gth-enum-types.h <- gth-enum-types.h dependency dropped. /bin/sh ../../libtool --mode=install /usr/bin/install -c libimage_rotation.la '/usr/lib/gthumb-2.0/extensions' libtool: install: /usr/bin/install -c .libs/libimage_rotation.so /usr/lib/gthumb-2.0/extensions/libimage_rotation.so libtool: install: /usr/bin/install -c .libs/libimage_rotation.lai /usr/lib/gthumb-2.0/extensions/libimage_rotation.la libtool: install: /usr/bin/install -c .libs/libimage_rotation.a /usr/lib/gthumb-2.0/extensions/libimage_rotation.a libtool: install: chmod 644 /usr/lib/gthumb-2.0/extensions/libimage_rotation.a libtool: install: ranlib /usr/lib/gthumb-2.0/extensions/libimage_rotation.a The *.so file is installed. But with ./autogen.sh --prefix=/opt/test/ CFLAGS="-ggdb" --libdir '/opt/test/lib64' --build x86_64 I see: [root@xena gthumb]# make install | grep libimage_rotation gtk-update-icon-cache: Cache file created successfully. make[1]: Circular gth-enum-types.h <- gth-enum-types.h dependency dropped. make[3]: Circular gth-enum-types.h <- gth-enum-types.h dependency dropped. make[4]: Circular gth-enum-types.h <- gth-enum-types.h dependency dropped. /bin/sh ../../libtool --mode=install /usr/bin/install -c libimage_rotation.la '/opt/test/lib64/gthumb-2.0/extensions' libtool: install: /usr/bin/install -c .libs/libimage_rotation.lai /opt/test/lib64/gthumb-2.0/extensions/libimage_rotation.la libtool: install: /usr/bin/install -c .libs/libimage_rotation.a /opt/test/lib64/gthumb-2.0/extensions/libimage_rotation.a libtool: install: chmod 644 /opt/test/lib64/gthumb-2.0/extensions/libimage_rotation.a libtool: install: ranlib /opt/test/lib64/gthumb-2.0/extensions/libimage_rotation.a Note that no *.so file is installed in this case, which is what gThumb is complaining about. - Mike
no, only .a and .la
Marking as invalid - obviously the distros are packaging 64 bit versions just fine. - Mike