Bug#452339: dpkg-dev: fails to parse some shlibs files

2007-11-22 Thread Raphael Hertzog
On Thu, 22 Nov 2007, Aurelien Jarno wrote:
> No associated package found for /usr/lib/libusb-0.1.so.4
> dpkg-shlibdeps: failure: No dependency information found for libusb-0.1.so.4 
> (used by debian/kzenexplorer/usr/bin/kzenexplorer).
> Looking up shlibs dependency of libusb-0.1.so.4 provided by ''
> Found nothing
> dh_shlibdeps: command returned error code 65280

What happened is:
- kzenexplorer has an RPATH "/usr/lib:/lib" on amd64 (and not on i386)
- the new dpkg-shlibdeps now support this directive correctly
- thus it finds a symlink in /usr/lib/libusb-0.1.so.4 which has been
  created by ldconfig and which is not owned by any package
  (instead of finding the packaged symlink in /lib/libusb-0.1.so.4)

So my diagnostic was not far from the truth. I supposed that I should try
a dpkg -S on realpath(library) as fallback when I don't find an associated
package.

Cheers,
-- 
Raphaël Hertzog

Premier livre français sur Debian GNU/Linux :
http://www.ouaza.com/livre/admin-debian/





Bug#452339: dpkg-dev: fails to parse some shlibs files

2007-11-22 Thread Aurelien Jarno
On Thu, Nov 22, 2007 at 09:11:50AM +0100, Raphael Hertzog wrote:
> On Thu, 22 Nov 2007, Aurelien Jarno wrote:
> > Package: dpkg-dev
> > Version: 1.14.9
> > Severity: serious
> > 
> > >From my build log:
> > 
> > dh_compress -pkzenexplorer -X .dcl -X .docbook -X -license -X .tag -X .sty 
> > -X .el
> > dh_fixperms -pkzenexplorer
> > dh_makeshlibs -pkzenexplorer
> > dh_installdeb -pkzenexplorer
> > dh_perl -pkzenexplorer
> > dh_shlibdeps -pkzenexplorer
> > dpkg-shlibdeps: failure: No dependency information found for 
> > libusb-0.1.so.4 (used by debian/kzenexplorer/usr/bin/kzenexplorer).
> > dh_shlibdeps: command returned error code 65280
> > make: *** [binary-predeb-IMPL/kzenexplorer] Error 1
> > 
> > But libusb-0.1.so.4 has a shlib file:
> > 
> > [volta:~]$ cat /var/lib/dpkg/info/libusb-0.1-4.shlibs
> > libusb-0.1 4 libusb-0.1-4 (>= 2:0.1.12)
> > udeb: libusb-0.1 4 libusb-0.1-udeb (>= 2:0.1.12)
> 
> I can't reproduce this on i386 while building kzenexplorer_0.6-1. I fear
> that the lookup of the library on amd64 provides a name which is not the
> real name but somehow a symlink lib like /usr/lib64/libusb-0.1-4 since
> we're now respecting ld.so.conf properly with includes.
> 
> Can you apply the attached patch to dpkg-shlibdeps and re-run the build after
> adding "-v" to dpkg-shlibdeps (use "dh_slibdeps -- -v" for this), that way
> I'll have all the required information.

Scanning debian/kzenexplorer/usr/bin/kzenexplorer (for Depends field)
Library libkutils.so.1 found in /usr/lib/libkutils.so.1
Library libkio.so.4 found in /usr/lib/libkio.so.4
Library libkdeui.so.4 found in /usr/lib/libkdeui.so.4
Library libkdesu.so.4 found in /usr/lib/libkdesu.so.4
Library libkwalletclient.so.1 found in /usr/lib/libkwalletclient.so.1
Library libkdecore.so.4 found in /usr/lib/libkdecore.so.4
Library libDCOP.so.4 found in /usr/lib/libDCOP.so.4
Library libresolv.so.2 found in /lib/libresolv.so.2
Library libutil.so.1 found in /lib/libutil.so.1
Library libart_lgpl_2.so.2 found in /usr/lib/libart_lgpl_2.so.2
Library libidn.so.11 found in /usr/lib/libidn.so.11
Library libkdefx.so.4 found in /usr/lib/libkdefx.so.4
Library libqt-mt.so.3 found in /usr/lib/libqt-mt.so.3
Library libaudio.so.2 found in /usr/lib/libaudio.so.2
Library libXt.so.6 found in /usr/lib/libXt.so.6
Library libjpeg.so.62 found in /usr/lib/libjpeg.so.62
Library libXi.so.6 found in /usr/lib/libXi.so.6
Library libXrandr.so.2 found in /usr/lib/libXrandr.so.2
Library libXcursor.so.1 found in /usr/lib/libXcursor.so.1
Library libXinerama.so.1 found in /usr/lib/libXinerama.so.1
Library libXft.so.2 found in /usr/lib/libXft.so.2
Library libfreetype.so.6 found in /usr/lib/libfreetype.so.6
Library libfontconfig.so.1 found in /usr/lib/libfontconfig.so.1
Library libdl.so.2 found in /lib/libdl.so.2
Library libpng12.so.0 found in /usr/lib/libpng12.so.0
Library libXext.so.6 found in /usr/lib/libXext.so.6
Library libX11.so.6 found in /usr/lib/libX11.so.6
Library libSM.so.6 found in /usr/lib/libSM.so.6
Library libICE.so.6 found in /usr/lib/libICE.so.6
Library libpthread.so.0 found in /lib/libpthread.so.0
Library libXrender.so.1 found in /usr/lib/libXrender.so.1
Library libfam.so.0 found in /usr/lib/libfam.so.0
Library libacl.so.1 found in /lib/libacl.so.1
Library libattr.so.1 found in /lib/libattr.so.1
Library libtag.so.1 found in /usr/lib/libtag.so.1
Library libz.so.1 found in /usr/lib/libz.so.1
Library libnjb.so.5 found in /usr/lib/libnjb.so.5
Library libusb-0.1.so.4 found in /usr/lib/libusb-0.1.so.4
Library libstdc++.so.6 found in /usr/lib/libstdc++.so.6
Library libm.so.6 found in /lib/libm.so.6
Library libgcc_s.so.1 found in /lib/libgcc_s.so.1
Library libc.so.6 found in /lib/libc.so.6
Looking up shlibs dependency of libXft.so.2 provided by 'libxft2'
Found libxft2 (>> 2.1.1) in /var/lib/dpkg/info/libxft2.shlibs
Looking up shlibs dependency of libm.so.6 provided by 'libc6'
Found libc6 (>= 2.6.1-1) in /var/lib/dpkg/info/libc6.shlibs
Looking up shlibs dependency of libjpeg.so.62 provided by 'libjpeg62'
Found libjpeg62 in /var/lib/dpkg/info/libjpeg62.shlibs
Looking up shlibs dependency of libkio.so.4 provided by 'kdelibs4c2a'
Found kdelibs4c2a (>= 4:3.5.7-1) in /var/lib/dpkg/info/kdelibs4c2a.shlibs
Looking up shlibs dependency of libXrandr.so.2 provided by 'libxrandr2'
Found libxrandr2 (>= 2:1.2.0) in /var/lib/dpkg/info/libxrandr2.shlibs
Looking up shlibs dependency of libDCOP.so.4 provided by 'kdelibs4c2a'
Found kdelibs4c2a (>= 4:3.5.7-1) in /var/lib/dpkg/info/kdelibs4c2a.shlibs
Looking up shlibs dependency of libqt-mt.so.3 provided by 'libqt3-mt'
Found libqt3-mt (>= 3:3.3.7) in /var/lib/dpkg/info/libqt3-mt.shlibs
Looking up shlibs dependency of libkdeui.so.4 provided by 'kdelibs4c2a'
Found kdelibs4c2a (>= 4:3.5.7-1) in /var/lib/dpkg/info/kdelibs4c2a.shlibs
Looking up shlibs dependency of libICE.so.6 provided by 'libice6'
Found libice6 (>= 1:1.0.0) in /var/lib/dpkg/info/libice6.shlibs
Looking up shlibs dependency of libfreetype.so.6 provided by 'libfreetype6'
Found libfreetype6 (

Bug#452339: dpkg-dev: fails to parse some shlibs files

2007-11-22 Thread Raphael Hertzog
On Thu, 22 Nov 2007, Aurelien Jarno wrote:
> Package: dpkg-dev
> Version: 1.14.9
> Severity: serious
> 
> >From my build log:
> 
> dh_compress -pkzenexplorer -X .dcl -X .docbook -X -license -X .tag -X .sty -X 
> .el
> dh_fixperms -pkzenexplorer
> dh_makeshlibs -pkzenexplorer
> dh_installdeb -pkzenexplorer
> dh_perl -pkzenexplorer
> dh_shlibdeps -pkzenexplorer
> dpkg-shlibdeps: failure: No dependency information found for libusb-0.1.so.4 
> (used by debian/kzenexplorer/usr/bin/kzenexplorer).
> dh_shlibdeps: command returned error code 65280
> make: *** [binary-predeb-IMPL/kzenexplorer] Error 1
> 
> But libusb-0.1.so.4 has a shlib file:
> 
> [volta:~]$ cat /var/lib/dpkg/info/libusb-0.1-4.shlibs
> libusb-0.1 4 libusb-0.1-4 (>= 2:0.1.12)
> udeb: libusb-0.1 4 libusb-0.1-udeb (>= 2:0.1.12)

I can't reproduce this on i386 while building kzenexplorer_0.6-1. I fear
that the lookup of the library on amd64 provides a name which is not the
real name but somehow a symlink lib like /usr/lib64/libusb-0.1-4 since
we're now respecting ld.so.conf properly with includes.

Can you apply the attached patch to dpkg-shlibdeps and re-run the build after
adding "-v" to dpkg-shlibdeps (use "dh_slibdeps -- -v" for this), that way
I'll have all the required information.

Please also paste me /etc/ld.so.conf and /etc/ld.so.conf.d/*

Thanks,
-- 
Raphaël Hertzog

Premier livre français sur Debian GNU/Linux :
http://www.ouaza.com/livre/admin-debian/
diff --git a/scripts/dpkg-shlibdeps.pl b/scripts/dpkg-shlibdeps.pl
index 8902b94..800460d 100755
--- a/scripts/dpkg-shlibdeps.pl
+++ b/scripts/dpkg-shlibdeps.pl
@@ -100,7 +100,8 @@ foreach my $file (keys %exec) {
failure(_g("couldn't find library %s (note: only packages with " .
   "'shlibs' files are looked into)."), $soname)
unless defined($lib);
-   $libfiles{$lib} = $soname if defined($lib);
+   $libfiles{$lib} = $soname;
+   print "Library $soname found in $lib\n" if $debug;
 }
 my $file2pkg = find_packages(keys %libfiles);
 my $symfile = Dpkg::Shlibs::SymbolFile->new();
@@ -114,6 +115,7 @@ foreach my $file (keys %exec) {
# Empty package name will lead to consideration of symbols
# file from the package being built only
$file2pkg->{$lib} = [""];
+   print "No associated package found for $lib\n" if $debug;
}
 
# Load symbols/shlibs files from packages providing libraries
@@ -327,6 +329,7 @@ Dependency fields recognised are:
 
 sub add_shlibs_dep {
 my ($soname, $pkg) = @_;
+print "Looking up shlibs dependency of $soname provided by '$pkg'\n" if 
$debug;
 foreach my $file ($shlibslocal, $shlibsoverride, @pkg_shlibs,
"$admindir/info/$pkg.shlibs",
$shlibsdefault)
@@ -334,12 +337,14 @@ sub add_shlibs_dep {
next if not -e $file;
my $dep = extract_from_shlibs($soname, $file);
if (defined($dep)) {
+   print "Found $dep in $file\n" if $debug;
foreach (split(/,\s*/, $dep)) {
$dependencies{$cur_field}{$_} = 1;
}
return 1;
}
 }
+print "Found nothing\n" if $debug;
 return 0;
 }
 


Bug#452339: dpkg-dev: fails to parse some shlibs files

2007-11-21 Thread Aurelien Jarno
Package: dpkg-dev
Version: 1.14.9
Severity: serious

>From my build log:

dh_compress -pkzenexplorer -X .dcl -X .docbook -X -license -X .tag -X .sty -X 
.el
dh_fixperms -pkzenexplorer
dh_makeshlibs -pkzenexplorer
dh_installdeb -pkzenexplorer
dh_perl -pkzenexplorer
dh_shlibdeps -pkzenexplorer
dpkg-shlibdeps: failure: No dependency information found for libusb-0.1.so.4 
(used by debian/kzenexplorer/usr/bin/kzenexplorer).
dh_shlibdeps: command returned error code 65280
make: *** [binary-predeb-IMPL/kzenexplorer] Error 1

But libusb-0.1.so.4 has a shlib file:

[volta:~]$ cat /var/lib/dpkg/info/libusb-0.1-4.shlibs
libusb-0.1 4 libusb-0.1-4 (>= 2:0.1.12)
udeb: libusb-0.1 4 libusb-0.1-udeb (>= 2:0.1.12)


-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.22-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages dpkg-dev depends on:
ii  binutils  2.18-1 The GNU assembler, linker and bina
ii  cpio  2.9-4  GNU cpio -- a program to manage ar
ii  dpkg  1.14.9 package maintenance system for Deb
ii  make  3.81-3 The GNU version of the "make" util
ii  patch 2.5.9-4Apply a diff file to an original
ii  perl [perl5]  5.8.8-11   Larry Wall's Practical Extraction 
ii  perl-modules  5.8.8-11   Core Perl modules

Versions of packages dpkg-dev recommends:
ii  bcc [c-compiler]  0.16.17-2  16-bit x86 C compiler
ii  bzip2 1.0.3-7high-quality block-sorting file co
ii  gcc [c-compiler]  4:4.2.1-6  The GNU C compiler
ii  gcc-3.3 [c-compiler]  1:3.3.6-15 The GNU C compiler
ii  gcc-3.4 [c-compiler]  3.4.6-6The GNU C compiler
ii  gcc-4.1 [c-compiler]  4.1.2-16   The GNU C compiler
ii  gcc-4.2 [c-compiler]  4.2.2-2The GNU C compiler

-- no debconf information




-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]