pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/29906: x11/gtk2 doesn't build on Linux (SuSE 8.1)



>Number:         29906
>Category:       pkg
>Synopsis:       x11/gtk2 doesn't build on Linux (SuSE 8.1)
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Apr 06 16:12:00 +0000 2005
>Originator:     Torsten Harenberg
>Release:        Linux 2.4.21 (SuSE 8.1)
>Organization:
University of Wuppertal
>Environment:
Linux wppc78 2.4.21-273-athlon #1 Mon Jan 17 12:58:30 UTC 2005 i686 unknown
>Description:
x11/gtk2 is not able to build anymore since 03/28/05. 

Here's what I did (okay, all dependencies had been build at that place 
allready):

wppc78:~ # cd /usr/pkgsrc/x11/gtk2
wppc78:/usr/pkgsrc/x11/gtk2 # ls
.  ..  CVS  DESCR  Makefile  PLIST  buildlink3.mk  distinfo  files 
modules.mk  patches
wppc78:/usr/pkgsrc/x11/gtk2 # /usr/pkg/bin/bmake install
===> *** No /usr/pkgsrc/distfiles/pkg-vulnerabilities file found,
===> *** skipping vulnerability checks. To fix, install
===> *** the pkgsrc/security/audit-packages package and run
===> *** '/usr/pkg/sbin/download-vulnerability-list'.
=> Checksum SHA1 OK for gtk+-2.6.4.tar.bz2.
=> Checksum RMD160 OK for gtk+-2.6.4.tar.bz2.
===> Extracting for gtk2+-2.6.4
===> Required installed package xdg-dirs>=1.1: xdg-dirs-1.1 found
===> Required installed package atk>=1.8.0nb1: atk-1.9.1 found
===> Required installed package pango>=1.8.0: pango-1.8.1 found
===> Required installed package glib2>=2.6.2: glib2-2.6.3 found
===> Required installed package Xft2>=2.1.6nb1: Xft2-2.1.6nb1 found
===> Required installed package fontconfig>=2.2.96nb1: fontconfig-2.3.1 
found
===> Required installed package expat>=1.95.8nb2: expat-1.95.8nb2 found
===> Required installed package freetype2>=2.1.9nb1: freetype2-2.1.9nb1 
found
===> Required installed package png>=1.2.6nb1: png-1.2.8 found
===> Required installed package tiff>=3.7.1nb1: tiff-3.7.2 found
===> Required installed package zlib>=1.2.1nb3: zlib-1.2.2 found
===> Required installed package jpeg>=6bnb2: jpeg-6bnb3 found
===> Required installed package xcursor>=1.1.1nb2: xcursor-1.1.2 found
===> Required installed package Xrandr>=1.0.2nb1: Xrandr-1.0.2nb2 found
===> Required installed package Xrender>=0.8.4nb1: Xrender-0.8.4nb1 found
===> Required installed package Xfixes>=2.0.1nb1: Xfixes-2.0.1nb1 found
===> Required installed package fixesext>=2.0: fixesext-2.0.1 found
===> Required installed package libtool-base>=1.5.14: libtool-base-1.5.14 
found
===> Required installed package x11-links>=0.24: x11-links-0.24 found
===> Required installed package gcc3-c>=3.3: gcc3-c-3.3.5 found
===> Required installed package pkgconfig>=0.15.0: pkgconfig-0.15.0nb2 
found
===> Required installed package randrext>=1.0: randrext-1.0nb1 found
===> Required installed package xextensions>=1.0: xextensions-1.0.1 found
===> Required installed package render>=0.2: render-0.8 found
===> Required installed package render>=0.8: render-0.8 found
===> Patching for gtk2+-2.6.4
===> Applying pkgsrc patches for gtk2+-2.6.4
===> Overriding tools for gtk2+-2.6.4
===> Creating toolchain wrappers for gtk2+-2.6.4
===> Configuring for gtk2+-2.6.4
=> Fixing locale directory references.
=> Adding rpaths to pkgconfig files.
configure: WARNING: If you wanted to set the --build type, don't use 
--host.
     If a cross compiler is detected then cross compile mode will be used.
checking for a BSD-compatible install... /usr/bin/install -c -o root -g 
root
checking whether build environment is sane... yes
checking for gawk... /usr/bin/awk
checking whether make sets $(MAKE)... yes
checking for i386-pc-linux-strip... no
checking for strip... strip
checking build system type... i686-pc-linux-gnu
checking host system type... i386-pc-linux-gnu
checking for native Win32... no
checking for i386-pc-linux-gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for a sed that does not truncate output... /usr/bin/sed
checking for egrep... grep -E
checking for ld used by gcc... /usr/pkgsrc/x11/gtk2/work/.wrapper/bin/ld
checking if the linker (/usr/pkgsrc/x11/gtk2/work/.wrapper/bin/ld) is GNU 
ld... yes
checking for /usr/pkgsrc/x11/gtk2/work/.wrapper/bin/ld option to reload 
object files... -r
checking for BSD-compatible nm... nm
checking whether ln -s works... yes
checking how to recognise dependent libraries... pass_all
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for i386-pc-linux-g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking how to run the C++ preprocessor... g++ -E
checking for i386-pc-linux-g77... f77
checking whether we are using the GNU Fortran 77 compiler... yes
checking whether f77 accepts -g... yes
checking the maximum length of command line arguments... 32768
checking command to parse nm output from gcc object... ok
checking for objdir... .libs
checking for i386-pc-linux-ar... no
checking for ar... ar
checking for i386-pc-linux-ranlib... no
checking for ranlib... ranlib
checking for i386-pc-linux-strip... strip
checking if gcc static flag  works... yes
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC
checking if gcc PIC flag -fPIC works... yes
checking if gcc supports -c -o file.o... yes
checking whether the gcc linker 
(/usr/pkgsrc/x11/gtk2/work/.wrapper/bin/ld) supports shared libraries... 
yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
configure: creating libtool
appending configuration tag "CXX" to libtool
checking for ld used by g++... /usr/pkgsrc/x11/gtk2/work/.wrapper/bin/ld
checking if the linker (/usr/pkgsrc/x11/gtk2/work/.wrapper/bin/ld) is GNU 
ld... yes
checking whether the g++ linker 
(/usr/pkgsrc/x11/gtk2/work/.wrapper/bin/ld) supports shared libraries... 
yes
checking for g++ option to produce PIC... -fPIC
checking if g++ PIC flag -fPIC works... yes
checking if g++ supports -c -o file.o... yes
checking whether the g++ linker 
(/usr/pkgsrc/x11/gtk2/work/.wrapper/bin/ld) supports shared libraries... 
yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
appending configuration tag "F77" to libtool
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking for f77 option to produce PIC... -fPIC
checking if f77 PIC flag -fPIC works... yes
checking if f77 supports -c -o file.o... yes
checking whether the f77 linker 
(/usr/pkgsrc/x11/gtk2/work/.wrapper/bin/ld) supports shared libraries... 
yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... 64
checking for _LARGE_FILES value needed for large files... no
checking whether to enable maintainer-specific portions of Makefiles... no
checking for some Win32 platform... no
checking whether build environment is sane... yes
checking for strerror in -lcposix... no
checking for gcc option to accept ANSI C... none needed
checking for a BSD-compatible install... /usr/bin/install -c -o root -g 
root
checking whether make sets $(MAKE)... (cached) yes
checking for glib-2.0 >= 2.6.0    atk >= 1.0.1    pango >= 1.8.0... yes
checking BASE_DEPENDENCIES_CFLAGS... -I/usr/pkg/include/glib/glib-2.0 
-I/usr/pkg/lib/glib-2.0/include -I/usr/pkg/include/atk-1.0 
-I/usr/pkg/include/pango-1.0
checking BASE_DEPENDENCIES_LIBS... -Wl,-R/usr/pkg/lib -L/usr/pkg/lib 
-latk-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
checking Whether to write dependencies into .pc files... no
checking for perl5... no
checking for perl... /usr/pkg/bin/perl
checking for indent... no
checking for lstat... yes
checking for mkstemp... yes
checking for flockfile... yes
checking for sigsetjmp... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking for LC_MESSAGES... yes
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
checking for ngettext in libc... yes
checking for dgettext in libc... yes
checking for bind_textdomain_codeset... yes
checking for msgfmt... /usr/bin/msgfmt
checking for dcgettext... yes
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for catalogs to be installed...  af am ar az az_IR be bg bn br bs 
ca cs cy da de el en_CA en_GB es et eu fa fi fr ga gl gu he hi hr hu ia id 
is it ja ko li lt lv mi mk ml mn mr ms nb ne nl nn no nso pa pl pt pt_BR 
ro ru rw sk sl sq sr sr@ije sr@Latn sv ta th tk tr uk uz uz@Latn vi wa xh 
yi zh_CN zh_TW
checking for extra flags to get ANSI library prototypes... none needed
checking for the BeOS... no
checking for extra flags for POSIX compliance... none needed
checking for pkg-config... /usr/pkg/bin/pkg-config
checking for GLIB - version >= 2.6.0... yes (version 2.6.3)
checking for bind_textdomain_codeset... (cached) yes
checking pwd.h usability... yes
checking pwd.h presence... yes
checking for pwd.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking for ANSI C header files... (cached) yes
checking for an ANSI C-conforming const... yes
checking return type of signal handlers... void
checking for stdlib.h... (cached) yes
checking for unistd.h... (cached) yes
checking for getpagesize... yes
checking for working mmap... yes
checking for mallinfo... yes
checking for getresuid... yes
checking for uid_t in sys/types.h... yes
checking for fd_set... yes, found in sys/types.h
checking for wchar.h... yes
checking for wctype.h... yes
checking for iswalnum... yes
checking if iswalnum() and friends are properly defined... yes
checking for uxtheme.h... no
checking whether to build gmodulized gdk-pixbuf... yes
checking whether dynamic modules work... yes
checking for TIFFReadScanline in -ltiff... yes
checking tiffio.h usability... yes
checking tiffio.h presence... yes
checking for tiffio.h... yes
checking for jpeg_destroy_decompress in -ljpeg... yes
checking for jpeglib.h... yes
checking for jpeg_simple_progression in -ljpeg... yes
checking for libpng12... yes
checking pixbuf loaders to build...
checking for sys/wait.h that is POSIX.1 compatible... yes
checking return type of signal handlers... (cached) void
checking for x86 platform... yes
checking compiler support for MMX... yes
checking for freetype-config... /usr/pkg/bin/freetype-config
checking For sufficiently new FreeType (at least 2.0.1)... yes
checking for X... libraries /usr/X11R6/lib, headers /usr/X11R6/include
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
checking for XOpenDisplay in -lX11... yes
checking for XShmAttach in -lXext... yes
checking for XineramaQueryExtension in -lXinerama... (cached) no
checking for Xinerama support on XFree86... no
checking if <X11/extensions/XIproto.h> is needed for xReply... no
checking for XShapeCombineMask in -lXext... yes
checking for XConvertCase in -lX11... yes
checking for XInternAtoms in -lX11... yes
checking for XAddConnectionWatch in -lX11... yes
checking for XkbQueryExtension in -lX11... yes
checking for XRRUpdateConfiguration in -lXrandr... yes
checking for X11/extensions/Xrandr.h... yes
checking for xcursor... yes
checking XCURSOR_CFLAGS... -DXTHREADS -I/usr/pkg/include 
-I/usr/X11R6/include
checking XCURSOR_LIBS... -Wl,-R/usr/pkg/lib -L/usr/pkg/lib 
-L/usr/X11R6/lib -lXcursor -lXrender -lX11
checking for XSyncQueryExtension in -lXext... yes
checking for X11/extensions/sync.h... yes
checking for xfixes... yes
checking XFIXES_CFLAGS... -DXTHREADS -I/usr/pkg/include 
-I/usr/X11R6/include
checking XFIXES_LIBS... -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -L/usr/X11R6/lib 
-lXfixes -lX11
checking sys/ipc.h usability... yes
checking sys/ipc.h presence... yes
checking for sys/ipc.h... yes
checking sys/shm.h usability... yes
checking sys/shm.h presence... yes
checking for sys/shm.h... yes
checking X11/extensions/XShm.h... yes
checking Pango flags... -DXTHREADS -I/usr/pkg/include/pango-1.0 
-I/usr/pkg/include -I/usr/pkg/include/freetype2 -I/usr/X11R6/include 
-I/usr/pkg/include/glib/glib-2.0 -I/usr/pkg/lib/glib-2.0/include 
-Wl,-R/usr/pkg/lib -L/usr/pkg/lib -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 
-lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
configure: error:
*** Can't link to Pango. Pango is required to build
*** GTK+. For more information see http://www.pango.org
*** Error code 1

Stop.
bmake: stopped in /usr/pkgsrc/x11/gtk2
===>
===> There was an error during the ``configure'' phase.
===> Please investigate the following for more information:
===>      * config.log
===>      * /usr/pkgsrc/x11/gtk2/work/.work.log
===>
*** Error code 1

Stop.
bmake: stopped in /usr/pkgsrc/x11/gtk2


----------------

The probably most relevant part of config.log in the work dir looks like 
this:


configure:30585: checking Pango flags
configure:30591: result: -DXTHREADS -I/usr/pkg/include/pango-1.0 
-I/usr/pkg/include -I/usr/pkg/include/fre
etype2 -I/usr/X11R6/include -I/usr/pkg/include/glib/glib-2.0 
-I/usr/pkg/lib/glib-2.0/include   -Wl,-R/usr/
pkg/lib -L/usr/pkg/lib -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 
-lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0

configure:30639: gcc -o conftest -O2 -pthread -I/usr/pkg/include 
-I/usr/include -I/usr/pkg/include/freetyp
e2 -Wall -DXTHREADS -I/usr/pkg/include/pango-1.0 -I/usr/pkg/include 
-I/usr/pkg/include/freetype2 -I/usr/X1
1R6/include -I/usr/pkg/include/glib/glib-2.0 
-I/usr/pkg/lib/glib-2.0/include    -DPREFIX="\"/usr/pkg\""  -
I/usr/pkg/include -I/usr/include -I/usr/pkg/include/freetype2 
-L/usr/pkg/gcc3/lib/gcc-lib/i386-pc-linux/
3.3.5 -Wl,-R/usr/pkg/gcc3/lib/gcc-lib/i386-pc-linux/3.3.5 
-L/usr/pkg/gcc3/lib -Wl,-R/usr/pkg/gcc3/lib -Wl,
-R/usr/X11R6/lib -L/usr/X11R6/lib -L/usr/pkg/lib -Wl,-R/usr/pkg/lib 
-L/usr/lib -Wl,-R/usr/lib -pthread con
ftest.c -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -lpangoxft-1.0 -lpangox-1.0 
-lpango-1.0 -lgobject-2.0 -lgmodule-
2.0 -ldl -lglib-2.0    -lpthread -lrt  >&5
/usr/pkgsrc/x11/gtk2/work/.x11-buildlink/lib/libpangoxft-1.0.so: undefined 
reference to `XftGlyphExtents'
/usr/pkgsrc/x11/gtk2/work/.x11-buildlink/lib/libpangoxft-1.0.so: undefined 
reference to `XftCharIndex'
/usr/pkgsrc/x11/gtk2/work/.x11-buildlink/lib/libpangoxft-1.0.so: undefined 
reference to `XRenderFindStanda
rdFormat'
/usr/pkgsrc/x11/gtk2/work/.x11-buildlink/lib/libpangoxft-1.0.so: undefined 
reference to `XftGlyphSpecRende
r'
/usr/pkgsrc/x11/gtk2/work/.x11-buildlink/lib/libpangoxft-1.0.so: undefined 
reference to `XftDrawGlyphSpec'
/usr/pkgsrc/x11/gtk2/work/.x11-buildlink/lib/libpangoxft-1.0.so: undefined 
reference to `XftDrawSrcPicture
'
/usr/pkgsrc/x11/gtk2/work/.x11-buildlink/lib/libpangoxft-1.0.so: undefined 
reference to `XRenderCompositeT
rapezoids'
/usr/pkgsrc/x11/gtk2/work/.x11-buildlink/lib/libpangoxft-1.0.so: undefined 
reference to `XftLockFace'
/usr/pkgsrc/x11/gtk2/work/.x11-buildlink/lib/libpangoxft-1.0.so: undefined 
reference to `XftUnlockFace'
/usr/pkgsrc/x11/gtk2/work/.x11-buildlink/lib/libpangoxft-1.0.so: undefined 
reference to `XftCharExists'
/usr/pkgsrc/x11/gtk2/work/.x11-buildlink/lib/libpangoxft-1.0.so: undefined 
reference to `XftDrawPicture'
collect2: ld returned 1 exit status
configure:30645: $? = 1
configure: failed program was:
| /* confdefs.h.  */
|
| #define PACKAGE_NAME "gtk+"
| #define PACKAGE_TARNAME "gtk+"
| #define PACKAGE_VERSION "2.6.4"
| #define PACKAGE_STRING "gtk+ 2.6.4"
| #define PACKAGE_BUGREPORT 
"http://bugzilla.gnome.org/enter_bug.cgi?product=gtk+";
| #define GETTEXT_PACKAGE "gtk20"
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #ifdef __cplusplus
| extern "C" void std::exit (int) throw (); using std::exit;
| #endif
| #define _FILE_OFFSET_BITS 64
| #define GTK_COMPILED_WITH_DEBUGGING "minimum"
| #define HAVE_LSTAT 1
| #define HAVE_MKSTEMP 1
| #define HAVE_FLOCKFILE 1
| #define HAVE_SIGSETJMP 1
| #define HAVE_LOCALE_H 1
| #define HAVE_LC_MESSAGES 1
| #define HAVE_BIND_TEXTDOMAIN_CODESET 1
| #define HAVE_GETTEXT 1
| #define HAVE_DCGETTEXT 1
| #define ENABLE_NLS 1
| #define GTK_LOCALEDIR "/usr/pkg/share/locale"
| #define HAVE_BIND_TEXTDOMAIN_CODESET 1
| #define HAVE_PWD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UNISTD_H 1
| #define STDC_HEADERS 1
| #define RETSIGTYPE void
| #define HAVE_STDLIB_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_GETPAGESIZE 1
| #define HAVE_MMAP 1
| #define HAVE_MALLINFO 1
| #define HAVE_GETRESUID 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define USE_GMODULE 1
| #define HAVE_PROGRESSIVE_JPEG 1
| #define HAVE_SYS_WAIT_H 1
| #define RETSIGTYPE void
| #define USE_MMX 1
| #define HAVE_SHAPE_EXT 1
| #define HAVE_XCONVERTCASE 1
| #define HAVE_XINTERNATOMS 1
| #define HAVE_X11R6 1
| #define HAVE_XKB 1
| #define XINPUT_XFREE 1
| #define HAVE_RANDR 1
| #define HAVE_XCURSOR 1
| #define HAVE_XSYNC 1
| #define HAVE_XFIXES 1
| #define HAVE_IPC_H 1
| #define HAVE_SHM_H 1
| #define HAVE_XSHM_H 1
| /* end confdefs.h.  */
|
| /* Override any gcc2 internal prototype to avoid an error.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| /* We use char because int might match the return type of a gcc2
|    builtin and then its argument prototype would still apply.  */
| char pango_context_new ();
| int
| main ()
| {
| pango_context_new ();
| int
| main ()
| {
| pango_context_new ();
|   ;
|   return 0;
| }
configure:30667: error:
*** Can't link to Pango. Pango is required to build
*** GTK+. For more information see http://www.pango.org

Some action has allready been taken:

Julio M. Merino Vidal <jmmv84%gmail.com@localhost> asked for this output:

wppc78:~ # /usr/pkg/bin/pkg-config --libs pangoxft
-Wl,-R/usr/pkg/lib -L/usr/pkg/lib -lpangoxft-1.0 -lpango-1.0 -lgobject-2.0 
-lgmodule-2.0 -ldl -lglib-2.0
wppc78:~ # ldd /usr/pkg/lib/libpangoxft-1.0.so
         libpangoft2-1.0.so.0 => /usr/pkg/lib/libpangoft2-1.0.so.0 (0x40007000)
         libpango-1.0.so.0 => /usr/pkg/lib/libpango-1.0.so.0 (0x4002a000)
         libXft.so.2 => /usr/pkg/lib/libXft.so.2 (0x4005f000)
         libfreetype.so.6 => /usr/pkg/lib/libfreetype.so.6 (0x40070000)
         libz.so.1 => /usr/pkg/lib/libz.so.1 (0x400d3000)
         libXrender.so.1 => /usr/pkg/lib/libXrender.so.1 (0x400e3000)
         libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x400eb000)
         libfontconfig.so.1 => /usr/pkg/lib/libfontconfig.so.1 (0x401e4000)
         libgobject-2.0.so.0 => /usr/pkg/lib/libgobject-2.0.so.0 (0x40210000)
         libgmodule-2.0.so.0 => /usr/pkg/lib/libgmodule-2.0.so.0 (0x4023e000)
         libdl.so.2 => /lib/libdl.so.2 (0x40252000)
         libglib-2.0.so.0 => /usr/pkg/lib/libglib-2.0.so.0 (0x40255000)
         libc.so.6 => /lib/libc.so.6 (0x402cd000)
         libm.so.6 => /lib/libm.so.6 (0x403ee000)
         libexpat.so.0 => /usr/pkg/lib/libexpat.so.0 (0x40411000)
         /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
wppc78:~ # cd /usr/pkgsrc/x11/gtk2
wppc78:/usr/pkgsrc/x11/gtk2 # ls work*/.buildlink/lib/libX*
work/.buildlink/lib/libX11.a             work/.buildlink/lib/libXi.so.6.0
work/.buildlink/lib/libX11.so            work/.buildlink/lib/libXinerama.a
work/.buildlink/lib/libX11.so.6          work/.buildlink/lib/libXmu.a
work/.buildlink/lib/libX11.so.6.2        work/.buildlink/lib/libXmu.so
work/.buildlink/lib/libXTrap.a           work/.buildlink/lib/libXmu.so.6
work/.buildlink/lib/libXTrap.so          work/.buildlink/lib/libXmu.so.6.2
work/.buildlink/lib/libXTrap.so.6        work/.buildlink/lib/libXmuu.a
work/.buildlink/lib/libXTrap.so.6.4      work/.buildlink/lib/libXmuu.so
work/.buildlink/lib/libXau.a             work/.buildlink/lib/libXmuu.so.1
work/.buildlink/lib/libXaw.a 
work/.buildlink/lib/libXmuu.so.1.0
work/.buildlink/lib/libXaw.so            work/.buildlink/lib/libXp.a
work/.buildlink/lib/libXaw.so.6          work/.buildlink/lib/libXp.so
work/.buildlink/lib/libXaw.so.6.1        work/.buildlink/lib/libXp.so.6
work/.buildlink/lib/libXaw.so.7          work/.buildlink/lib/libXp.so.6.2
work/.buildlink/lib/libXaw.so.7.0        work/.buildlink/lib/libXpm.a
work/.buildlink/lib/libXcursor.a         work/.buildlink/lib/libXpm.so
work/.buildlink/lib/libXcursor.la        work/.buildlink/lib/libXpm.so.4
work/.buildlink/lib/libXcursor.so 
work/.buildlink/lib/libXpm.so.4.11
work/.buildlink/lib/libXcursor.so.1      work/.buildlink/lib/libXrandr.a
work/.buildlink/lib/libXcursor.so.1.0.2  work/.buildlink/lib/libXrandr.la
work/.buildlink/lib/libXdmcp.a           work/.buildlink/lib/libXrandr.so
work/.buildlink/lib/libXext.a 
work/.buildlink/lib/libXrandr.so.1
work/.buildlink/lib/libXext.so 
work/.buildlink/lib/libXrandr.so.1.0
work/.buildlink/lib/libXext.so.6 
work/.buildlink/lib/libXrandr.so.2
work/.buildlink/lib/libXext.so.6.4 
work/.buildlink/lib/libXrandr.so.2.0.1
work/.buildlink/lib/libXfixes.a          work/.buildlink/lib/libXrender.a
work/.buildlink/lib/libXfixes.la         work/.buildlink/lib/libXrender.la
work/.buildlink/lib/libXfixes.so         work/.buildlink/lib/libXrender.so
work/.buildlink/lib/libXfixes.so.0 
work/.buildlink/lib/libXrender.so.1
work/.buildlink/lib/libXfixes.so.0.1.0 
work/.buildlink/lib/libXrender.so.1.1
work/.buildlink/lib/libXfont.a 
work/.buildlink/lib/libXrender.so.1.2.2
work/.buildlink/lib/libXfont.so          work/.buildlink/lib/libXss.a
work/.buildlink/lib/libXfont.so.1        work/.buildlink/lib/libXt.a
work/.buildlink/lib/libXfont.so.1.4      work/.buildlink/lib/libXt.so
work/.buildlink/lib/libXfontcache.a      work/.buildlink/lib/libXt.so.6
work/.buildlink/lib/libXft.a             work/.buildlink/lib/libXt.so.6.0
work/.buildlink/lib/libXft.la            work/.buildlink/lib/libXtst.a
work/.buildlink/lib/libXft.so            work/.buildlink/lib/libXtst.so
work/.buildlink/lib/libXft.so.1          work/.buildlink/lib/libXtst.so.6
work/.buildlink/lib/libXft.so.1.1 
work/.buildlink/lib/libXtst.so.6.1
work/.buildlink/lib/libXft.so.2          work/.buildlink/lib/libXv.a
work/.buildlink/lib/libXft.so.2.1.2      work/.buildlink/lib/libXvMC.a
work/.buildlink/lib/libXi.a              work/.buildlink/lib/libXxf86dga.a
work/.buildlink/lib/libXi.so 
work/.buildlink/lib/libXxf86misc.a
work/.buildlink/lib/libXi.so.6           work/.buildlink/lib/libXxf86vm.a


Furthermore, he asks if dependency_libs variable of 
/usr/pkg/lib/libpangoxft-1.0.la is empty -> Yes, it is.

And he reported the following:

>I've isolated the problem: the compiler is picking libXft
>from /usr/X11R6/lib instead of the one in /usr/pkg/lib.  Both are
>different, and the former lacks some functions required by pango,
>thus causing the failure you see.
>
>You can reproduce it by creating a test file (just an empty main
>function) and running:
>
>$ gcc test.c -Wl,-R/usr/X11R6/lib -L/usr/X11R6/lib `pkg-config --libs
>pangoxft pangox`
>
>Mysteriously, if you remove -Wl,-R from the command line (leaving -L)
>it works.  I may be missing some details about that flag, though.
>
>This happens because -Wl,-R/usr/X11R6/lib -L/usr/X11R6/lib appear
>before the flags for /usr/pkg/lib.  I can't reproduce this locally
>in any of my boxes because the X system in them is new enough to
>provide the required functions from Xft2.
>
>I don't know how to fix this correctly...
>
>Maybe buildlink could reorder the flags so that the ones related to
>/usr/X11R6 come last, but that seems rather clumsy...

Johnny C. Lam <jlam%NetBSD.org@localhost> answered:

>This is a problem where the pkgsrc libXft and the X11R6 libXft probably 
>have the same major number.  Buildlink will force the correctly 
>libraries to be used during linking, but at run-time, the shared 
>libraries are found by searching the run-time library search path in 
>order.  In this case, since /usr/X11R6/lib appears before /usr/pkg/lib 
>in the rpath, it will be searched first.
>
>I believe that there is very little that we can do here to fix this 
>problem without requiring differing major numbers for the shared 
>libraries between X11R6 and pkgsrc.  The search path cannot be 
>guaranteed to be correct and can actually never be correct if the user 
>chooses to use the builtin versions of some libraries while using >pkgsrc 
>versions of others.  While buildlink could reorder the -Wl,-R flags, 
>it's not clear how to determine what the correct order should be.

Further information which has been looked at:

harenber@wppc78:~> ls -l /usr/pkgsrc/x11/gtk2/work/.buildlink/lib/libXft.*
lrwxrwxrwx    1 root     root           21 2005-03-28 19:08
/usr/pkgsrc/x11/gtk2/work/.buildlink/lib/libXft.a -> /usr/pkg/lib/libXft.a
-rw-r--r--    1 root     root          919 2005-03-28 19:08
/usr/pkgsrc/x11/gtk2/work/.buildlink/lib/libXft.la
lrwxrwxrwx    1 root     root           22 2005-03-28 19:08
/usr/pkgsrc/x11/gtk2/work/.buildlink/lib/libXft.so ->
/usr/pkg/lib/libXft.so
lrwxrwxrwx    1 root     root           40 2005-03-28 19:08
/usr/pkgsrc/x11/gtk2/work/.buildlink/lib/libXft.so.1 ->
/usr/pkg/share/x11-links/lib/libXft.so.1
lrwxrwxrwx    1 root     root           42 2005-03-28 19:08
/usr/pkgsrc/x11/gtk2/work/.buildlink/lib/libXft.so.1.1 ->
/usr/pkg/share/x11-links/lib/libXft.so.1.1
lrwxrwxrwx    1 root     root           24 2005-03-28 19:08
/usr/pkgsrc/x11/gtk2/work/.buildlink/lib/libXft.so.2 ->
/usr/pkg/lib/libXft.so.2
lrwxrwxrwx    1 root     root           28 2005-03-28 19:08
/usr/pkgsrc/x11/gtk2/work/.buildlink/lib/libXft.so.2.1.2 ->
/usr/pkg/lib/libXft.so.2.1.2
harenber@wppc78:~> objdump -p -j .dynamic /usr/X11R6/lib/libXft.so

/usr/X11R6/lib/libXft.so:     file format elf32-i386

Program Header:
    LOAD off    0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**12
         filesz 0x000164d5 memsz 0x000164d5 flags r-x
    LOAD off    0x000164e0 vaddr 0x000174e0 paddr 0x000174e0 align 2**12
         filesz 0x00000864 memsz 0x00013274 flags rw-
 DYNAMIC off    0x00016820 vaddr 0x00017820 paddr 0x00017820 align 2**2
         filesz 0x000000e8 memsz 0x000000e8 flags rw-

Dynamic Section:
  NEEDED      libXrender.so.1
  NEEDED      libXext.so.6
  NEEDED      libX11.so.6
  NEEDED      libfreetype.so.6
  NEEDED      libc.so.6
  SONAME      libXft.so.1
  INIT        0x3fe0
  FINI        0x141b0
  HASH        0x94
  STRTAB      0x1ed0
  SYMTAB      0x9f0
  STRSZ       0x12e3
  SYMENT      0x10
  PLTGOT      0x1791c
  PLTRELSZ    0x730
  PLTREL      0x11
  JMPREL      0x38b0
  REL         0x3490
  RELSZ       0x420
  RELENT      0x8
  VERNEED     0x3450
  VERNEEDNUM  0x1
  VERSYM      0x31b4
  RELCOUNT    0x61

Version References:
  required from libc.so.6:
    0x09691f73 0x00 04 GLIBC_2.1.3
    0x0d696911 0x00 03 GLIBC_2.1
    0x0d696910 0x00 02 GLIBC_2.0

harenber@wppc78:~> objdump -p -j .dynamic /usr/pkg/lib/libXft.so

/usr/pkg/lib/libXft.so:     file format elf32-i386

Program Header:
    LOAD off    0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**12
         filesz 0x00010618 memsz 0x00010618 flags r-x
    LOAD off    0x00010620 vaddr 0x00011620 paddr 0x00011620 align 2**12
         filesz 0x000004e4 memsz 0x0000051c flags rw-
 DYNAMIC off    0x0001070c vaddr 0x0001170c paddr 0x0001170c align 2**2
         filesz 0x000000f8 memsz 0x000000f8 flags rw-

Dynamic Section:
  NEEDED      libfontconfig.so.1
  NEEDED      libfreetype.so.6
  NEEDED      libz.so.1
  NEEDED      libXrender.so.1
  NEEDED      libX11.so.6
  NEEDED      libc.so.6
  SONAME      libXft.so.2
  RPATH       /usr/pkg/lib:/usr/X11R6/lib
  INIT        0x31b4
  FINI        0xfcd0
  HASH        0x94
  STRTAB      0x1994
  SYMTAB      0x8e4
  STRSZ       0xf87
  SYMENT      0x10
  PLTGOT      0x11818
  PLTRELSZ    0x560
  PLTREL      0x11
  JMPREL      0x2c54
  REL         0x2b64
  RELSZ       0xf0
  RELENT      0x8
  VERNEED     0x2b34
  VERNEEDNUM  0x1
  VERSYM      0x291c
  RELCOUNT    0x13

Version References:
  required from libc.so.6:
    0x09691f73 0x00 03 GLIBC_2.1.3
    0x0d696910 0x00 02 GLIBC_2.0


The next idea was:

On Tue, 29 Mar 2005, Julio M. Merino Vidal wrote:

> This is something for you to try, Torsten: edit
> the /usr/pkg/lib/libpangoxft-1.0.la file and add /usr/pkg/lib/libXft.la
> to the dependency_libs variable.  Then, try to 'make clean' and 'make
> configure' gtk2 again.

Which didn't helped.

Another idea by Johnny Lam:

I poked into this further.  It looks like pango should be configured 
with --enable-explicit-deps or else it always strips out the 
dependency_libs line of the installed *.la files.  I have no idea why 
you'd want to "sanitize" the *.la files in this way as it explicitly 
breaks how libtool works, but that's what the pango Makefiles do.  This 
change (adding the new configure argument) should probably be done and 
the PKGREVISION of pango should be bumped.

I'm still investigating why the wrong libXft.so is being used.


Finally, Krister Walfridsson <cato%df.lth.se@localhost> reported in

http://mail-index.netbsd.org/tech-pkg/2005/04/03/0011.html

that the problem is visible also under NetBSD/1.6.2 i386

and in 

http://mail-index.netbsd.org/tech-pkg/2005/04/05/0028.html

that the problem went away on NetBSD 1.6.2. However, I still see it under Linux.


>How-To-Repeat:
Use a SuSE 8.1 box (I can supply accounts) and try to build x11/gtk2

>Fix:




Home | Main Index | Thread Index | Old Index