adam wrote:
Hi,
I am trying to compile a CVS version of the gnome tree for development
alongside my Debian copy. I want to install the tree in /opt
I have set these environment variables:
BASE="/opt"
GCCOPTS="-g"
export CC="gcc $GCCOPTS"
export CXX="g++ $GCCOPTS"
export PATH="$BASE/bin:$PATH"
export LD_LIBRARY_PATH="$BASE/lib:$LD_LIBRARY_PATH"
export LDFLAGS="-L$BASE/lib $LDFLAGS"
export LD_WARN=yes
export LIBS="-L$BASE/lib $LIBS"
export CPPFLAGS="-I$BASE/include $CPPFLAGS"
export CFLAGS="-I$BASE/include $CFLAGS"
export CXXFLAGS="-I$BASE/include $CXXFLAGS"
export PKG_CONFIG_PATH="$BASE/lib/pkgconfig:$PKG_CONFIG_PATH"
export LIBS="-L$BASE/lib $LIBS"
For the glib, atk and pango modules this has worked.
./autogen.sh --prefix=/opt --enable-gtk-doc; make; make install;
When doing the same for gtk+ there is a linking error:
/bin/sh ../libtool --mode=link gcc -g -I/opt/include -Wall
-L/opt/lib -o gtk-query-immodules-2.0 queryimmodules.o
libgtk-x11-2.0.la ../gdk-pixbuf/libgdk_pixbuf-2.0.la
../gdk/libgdk-x11-2.0.la -L/opt/lib -L/opt/lib
gcc -g -I/opt/include -Wall -o .libs/gtk-query-immodules-2.0
queryimmodules.o -L/opt/lib ./.libs/libgtk-x11-2.0.so
/home/adam/devel/cvs/gtk+/gdk/.libs/libgdk-x11-2.0.so -L/usr/X11R6/lib
/opt/lib/libatk-1.0.so /usr/lib/libgobject-2.0.so
/usr/lib/libgmodule-2.0.so /usr/lib/libglib-2.0.so
../gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so ../gdk/.libs/libgdk-x11-2.0.so
-lXinerama -lXext /usr/lib/libXft.so /usr/lib/libfreetype.so -lz
/usr/lib/libXrender.so -lfontconfig -lX11 /opt/lib/libpangoxft-1.0.so
/opt/lib/libpangox-1.0.so /opt/lib/libpango-1.0.so
/home/adam/devel/cvs/gtk+/gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so
/opt/lib/libgmodule-2.0.so -ldl /opt/lib/libgobject-2.0.so
/opt/lib/libglib-2.0.so -lm -Wl,--rpath -Wl,/opt/lib
/home/adam/devel/cvs/gtk+/gdk/.libs/libgdk-x11-2.0.so: undefined
reference to `g_unsetenv'
./.libs/libgtk-x11-2.0.so: undefined reference to
`g_completion_complete_utf8'
./.libs/libgtk-x11-2.0.so: undefined reference to
`g_markup_vprintf_escaped'
/opt/lib/libpango-1.0.so: undefined reference to
`g_unichar_get_mirror_char'
In this command there are both my debian glib libraries
(/usr/lib/libgobject-2.0.so /usr/lib/libgmodule-2.0.so
/usr/lib/libglib-2.0.so) and the new CVS libraries
(/opt/lib/libgmodule-2.0.so -ldl /opt/lib/libgobject-2.0.so
/opt/lib/libglib-2.0.so).
If i remove the debian libraries and run this command it compiles fine -
but since i there are a load of modules to compile this wont do.
Manually edit out references to existing library objects that are referred to
in any of the newly generated .la (libtool) files. It seems to be the bugginess
of libtool. Anyone know a decent bash-script debugger?
_______________________________________________
gtk-list@xxxxxxxxx
http://mail.gnome.org/mailman/listinfo/gtk-list