bug-libtool
[Top][All Lists]
Advanced

[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

Attachment: libtool-link.patch
Description: Text document

Attachment: pgpb4voHUHpma.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]