Poor Yorick
2007-Dec-22 21:57 UTC
[Fontconfig] build fails on x86_64 because of bad libtool RUNPATH order (FcFini)
Compiling fontconfig on an NFS volume used by nodes on a compute grid, the build fails with the following error: make[2]: Entering directory `/path/to/src/fontconfig-2.5.0_linux/fontconfig-2.5.0/test'' Fontconfig warning: line 3: unknown element "cachedir" /path/to/src/fontconfig-2.5.0_linux/fontconfig-2.5.0/fc-list/.libs/lt-fc-list: symbol lookup error: /path/to/src/fontconfig-2.5.0_linux/fontconfig-2.5.0/fc-list/. libs/lt-fc-list: undefined symbol: FcFini Fontconfig warning: line 3: unknown element "cachedir" It turns out that the libtool execution wrapper fc-list has explicitly added /usr/lib64 in front of /path/to/src/fontconfig-2.5.0_linux/fontconfig-2.5.0/src/.libs causing lt-fc-list to find an older libfontconfig.so. Here is the relevant snippet from fc-list (part of the relink_command variable): gcc -m64 -g -O2 -Wl,-rpath -Wl,/path/to/lib -Wl,--enable-new-dtags -o \$progdir/\$file fc-list.o -Wl,--rpath -Wl,/path/to/freetype-2.3.5/lib -L/path/to/lib -L/path/to/freetype-2.3.5/lib /path/to/freetype-2.3.5/lib/libfreetype.so -lz /usr/lib64/libexpat.so ../src/.libs/libfontconfig.so -Wl,--rpath -Wl,/path/to/freetype-2.3.5/lib -Wl,--rpath -Wl,/usr/lib64 -Wl,--rpath -Wl,/path/to/src/fontconfig-2.5.0_linux/fontconfig-2.5.0/src/.libs -Wl,--rpath -Wl,/path/to/freetype-2.3.5/lib -Wl,--rpath -Wl,/usr/lib64 -Wl,--rpath -Wl,/path/to/fontconfig-2.5.0/lib What is the best way fix/hack around this problem? -- Poor Yorick
Nguyen Vu Hung
2007-Dec-25 04:01 UTC
[Fontconfig] build fails on x86_64 because of bad libtool RUNPATH order (FcFini)
2007/12/23, Poor Yorick <org.freedesktop.lists.fontconfig at pooryorick.com>:> Compiling fontconfig on an NFS volume used by nodes on a compute grid, the build fails with the following error: > > make[2]: Entering directory `/path/to/src/fontconfig-2.5.0_linux/fontconfig-2.5.0/test'' > Fontconfig warning: line 3: unknown element "cachedir" > /path/to/src/fontconfig-2.5.0_linux/fontconfig-2.5.0/fc-list/.libs/lt-fc-list: symbol lookup error: /path/to/src/fontconfig-2.5.0_linux/fontconfig-2.5.0/fc-list/. > libs/lt-fc-list: undefined symbol: FcFini > Fontconfig warning: line 3: unknown element "cachedir" >Where did you get that error? Is that from "./configure; make"? And what is your enviroment ( CPU, compiler version, libtool version ( ld!!!!)> It turns out that the libtool execution wrapper fc-list has explicitly added /usr/lib64 in front of /path/to/src/fontconfig-2.5.0_linux/fontconfig-2.5.0/src/.libs causing lt-fc-list to find an older libfontconfig.so. Here is the relevant snippet from fc-list (part of the relink_command variable):It may be different from your environment but I under my system: Solaris 10, Sparc 64, gcc 3.4.6 ( from sunfreeware ), /libtool-1.5.24-sol10-sparc-local the error in the OP could not be reproduced. -- Best Regards, Nguyen Hung Vu ( Nguy?n V? H?ng ) vuhung16plus{remove}@gmail.dot.com An inquisitive look at Harajuku http://www.flickr.com/photos/vuhung/sets/72157600109218238/