[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gtk+-3 trunk compilation as documented in gtk-doc and libtool quick-fix
From: |
Ingo Krabbe |
Subject: |
gtk+-3 trunk compilation as documented in gtk-doc and libtool quick-fix |
Date: |
Tue, 28 Sep 2010 10:07:44 +0200 |
User-agent: |
Mutt/1.5.20 (2009-06-14) |
Hi,
I know you want to tell me to use jhbuild to compile gtk+-3 and friends,
but I don't like such tools and I tried to do my own build which worked
quite fine until I encountered small errors during the build of gtk+-3
itself, when programs, linked during the build later got called from the
build. There where two of such programs I detected:
gtk/gtk-query-immodules-3.0
and as I compiled with --enable-gtk-doc --enable-man:
docs/reference/gtk/gtk3-scan
which is a temporary executable done by gtkdoc tools.
The problem with both of those programs was, that the libtool link
wrapper had build a LD_LIBRARY_PATH that contained the system directory
"/usr/lib64" before "$prefix/lib", as it found as a sub-dependency of
the local gtk-x11.la and gdk-x11.la, some global .la files such as
libXinerama.la, before the more local ones libpangocairo*.la for
example.
And that how the LD_LIBRARY_PATH of the wrapper has been built, not
obeying the link order given by -L and -R flags, that have been
calculated in the right order.
Luckily libtool-2.4.1a from libtool git master, had a newlib_search_path
constructed at the time the wrapper is built, that contains the
whitespace seperated list of -L and -R paths arguments, so that I could
do a quick fix with a little sed, to strip the leading space and tr to
convert spaces into a colon.
As I hope this helps you further, I want to provide that patch against
libtool, and I hope that it will make into libtool development or is a
good anchor point to modify libtool in a different way.
I will be glad too if you, dedicated developers of gtk+ and libtool
would make your comments on it and discuss that patch with me and the
possibilities to do it else, as the building of LD_LIBRARY_PATHs for the
wrappers seems to me as a severe and long-term problem of libtool.
Anyway with this patch the gtk+-3 trunk compilation works like charme
here, with simple autogen.sh, make, make install commands:
# this is what I use to configure.
# INSTPATH can be set as preferred
PATH=$INSTPATH/bin:$PATH
PKG_CONFIG_PATH="$INSTPATH/lib/pkgconfig"
export PKG_CONFIG_PATH PATH
export INSTPATH
LD_LIBRARY_PATH="${INSTPATH}/lib"
export LD_LIBRARY_PATH
export ACLOCAL_FLAG="-I $INSTPATH/share/aclocal"
./autogen.sh --prefix="${INSTPATH}" --enable-gtk-doc --enable-man
bye ingo
--
i don't do signatures
libtool-link.patch
Description: Text document
pgpb4voHUHpma.pgp
Description: PGP signature
- gtk+-3 trunk compilation as documented in gtk-doc and libtool quick-fix,
Ingo Krabbe <=