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

Bug#344912: tetex-bin: binaries linked against unneeded libraries



Package: tetex-bin
Version: 3.0-11sarge12
Severity: important

Hi all, hi Martin,

since we apply the libpoppler patch to tetex-bin that you kindly
provided, all binaries get linked to "everything", This is easiest seen
with the libkpathsea library, which is also linked against lots of
unneeded things:

$ ldd /usr/lib/libkpathsea.so.4
		libpoppler.so.0 => /usr/lib/libpoppler.so.0 (0xb7ec9000)
	libc.so.6 => /lib/tls/libc.so.6 (0xb7d94000)
	libcairo.so.2 => /usr/lib/libcairo.so.2 (0xb7d51000)
	libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb7d22000)
	libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0xb7d04000)
	libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0xb7c4a000)
	libm.so.6 => /lib/tls/libm.so.6 (0xb7c28000)
	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb7c1f000)
	/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
	libXrender.so.1 => /usr/lib/libXrender.so.1 (0xb7c16000)
	libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0xb7b4f000)
	libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb7b2a000)
	libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb7abd000)
	libz.so.1 => /usr/lib/libz.so.1 (0xb7aab000)
	libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb7a8b000)
	libdl.so.2 => /lib/tls/libdl.so.2 (0xb7a87000)

Previously, neither the X-related nor the image format related libraries
where in there, and especially not libstdc++ (kpathsea is a pure C
application).

I don't know how this is happening, but this line looks suspcicious:

-gcc -shared [long list of .lo files] -Wl,-soname -Wl,libkpathsea.so.4 -o ../kpathsea/.libs/libkpathsea.so.4.0.0
+gcc -shared [long list of .lo files] -L/usr/X11R6/lib -L/usr/lib /usr/lib/libpoppler.so -Wl,-soname -Wl,libkpathsea.so.4 -o ../kpathsea/.libs/libkpathsea.so.4.0.0

why is there this "/usr/lib/libpoppler.so"?  Of course, libtool
invocation two lines earlier changed:

-/bin/sh ../libtool --mode=link gcc -o ../kpathsea/libkpathsea.la -rpath /usr/lib -version-info 4:0:0 [long list of .lo files]
+/bin/sh ../libtool --mode=link gcc -o ../kpathsea/libkpathsea.la -lpoppler  -rpath /usr/lib -version-info 4:0:0 [long list of .lo files]

I'm not sure whether the problem is that -lpoppler is passed - I thought
that gcc is clever enough not to link against libraries from which no
symbols are used.  But why does libtool pass "/usr/lib/libpoppler.so"?

Regards, Frank

-- System Information:
Debian Release: 3.1
Architecture: i386 (i686)
Kernel: Linux 2.6.10
Locale: LANG=de_DE@euro, LC_CTYPE=de_DE@euro (charmap=ISO-8859-15)

Versions of packages tetex-bin depends on:
ii  debconf [debconf-2 1.4.30.13             Debian configuration management sy
ii  debianutils        2.8.4                 Miscellaneous utilities specific t
ii  dpkg               1.10.28               Package maintenance system for Deb
ii  ed                 0.2-20                The classic unix line editor
ii  libc6              2.3.2.ds1-22          GNU C Library: Shared libraries an
ii  libcairo2          1.0.2-2sarge3         The Cairo 2D vector graphics libra
ii  libfontconfig1     2.3.1-2               generic font configuration library
ii  libfreetype6       2.1.7-2.4             FreeType 2 font engine, shared lib
ii  libgcc1            1:3.4.3-13            GCC support library
ii  libice6            4.3.0.dfsg.1-14sarge1 Inter-Client Exchange library
ii  libjpeg62          6b-10                 The Independent JPEG Group's JPEG 
ii  libkpathsea4       3.0-11sarge12         path search library for teTeX (run
ii  libpaper1          1.1.14-3              Library for handling paper charact
ii  libpng12-0         1.2.8rel-1            PNG library - runtime
ii  libpoppler0        0.4.2-1.0sarge2       PDF rendering library
ii  libsm6             4.3.0.dfsg.1-14sarge1 X Window System Session Management
ii  libstdc++5         1:3.3.5-13            The GNU Standard C++ Library v3
ii  libt1-5            5.0.2-3               Type 1 font rasterizer library - r
ii  libx11-6           4.3.0.dfsg.1-14sarge1 X Window System protocol client li
ii  libxaw7            4.3.0.dfsg.1-14sarge1 X Athena widget set library
ii  libxext6           4.3.0.dfsg.1-14sarge1 X Window System miscellaneous exte
ii  libxmu6            4.3.0.dfsg.1-14sarge1 X Window System miscellaneous util
ii  libxpm4            4.3.0.dfsg.1-14sarge1 X pixmap library
ii  libxrender1        0.8.3-7               X Rendering Extension client libra
ii  libxt6             4.3.0.dfsg.1-14sarge1 X Toolkit Intrinsics
ii  mime-support       3.28-1                MIME files 'mime.types' & 'mailcap
ii  perl               5.8.4-8               Larry Wall's Practical Extraction 
ii  sed                4.1.2-8               The GNU sed stream editor
ii  tetex-base         3.0-11                Basic library files of teTeX
ii  ucf                1.17                  Update Configuration File: preserv
ii  xlibs              4.3.0.dfsg.1-14sarge1 X Keyboard Extension (XKB) configu
ii  zlib1g             1:1.2.2-4.sarge.2     compression library - runtime

-- debconf information:
  tetex-bin/upd_map: true
* tetex-bin/cnf_name:
  tetex-bin/fmtutil: true
  tetex-bin/fmtutil-failed:
  tetex-bin/updmap-failed:
  tetex-bin/hyphen: french[=patois], ngerman[=naustrian-neue_Rechtschreibung]
  tetex-bin/oldcfg: true
  tetex-bin/use_debconf: false

-- 
Frank Küster
Inst. f. Biochemie der Univ. Zürich
Debian Developer




Reply to: