[Pkg-samba-maint] FW: [Bug 14140] New: Overlinking libreplace against librt and pthread against every binary or library causes issues

L. van Belle belle at samba.org
Wed Sep 25 08:50:32 BST 2019


Good morning Mattieu/guys and girls..  

Have you seen this one. ( see bugzilla report a bit lower. ) 
> https://bugzilla.samba.org/show_bug.cgi?id=14140

Which is, or at least, looks like it, my last problem.
Mostly now :  missing-dependency-on-libc needed by  
So, I am reading into this : 
https://www.debian.org/doc/debian-policy/ch-sharedlibs.html#generating-depen
dencies-on-shared-libraries 

So im picking a line from the lintian output. 

E: libsmbclient: missing-dependency-on-libc needed by
usr/lib/x86_64-linux-gnu/libsmbclient.so.0.5.0
And im running :  dpkg-shlibdeps
debian/tmp/usr/lib/x86_64-linux-gnu/libsmbclient.so.0.5.0 
Which shows a list of 77 files about .. package could avoid a useless
dependency  

This looks a bit out of my scope off what im currently able todo.. Im
trying.. 
Below the bugzilla report is my lastest lintian output, that might also give
some more insight. 

> -----Oorspronkelijk bericht-----
> Van: samba-bugs at samba.org [mailto:samba-bugs at samba.org] 
> Verzonden: dinsdag 24 september 2019 10:20
> Aan: samba-qa at samba.org
> Onderwerp: [Bug 14140] New: Overlinking libreplace against 
> librt and pthread against every binary or library causes issues
> 
> https://bugzilla.samba.org/show_bug.cgi?id=14140
> 
>             Bug ID: 14140
>            Summary: Overlinking libreplace against librt and pthread
>                     against every binary or library causes issues
>            Product: Samba 4.1 and newer
>            Version: unspecified
>           Hardware: All
>                 OS: All
>             Status: NEW
>           Severity: normal
>           Priority: P5
>          Component: Build
>           Assignee: samba-qa at samba.org
>           Reporter: asn at samba.org
>         QA Contact: samba-qa at samba.org
> 
> Overlinking:
> 
> Currently libreplace links against librt, but it isn't needed 
> as the symbols we
> are looking for are provided by glibc.
> 
> The replace waf script checks for pthread and sets 
> LDFLAGS=-pthread globally.
> However most of our code does not need this at all.
> 
> 
> Impact on NSS modules:
> 
> NSS modules are more fragile and during and update they can 
> be non-functional
> for some time. Like with nss-winbind it wont work till all 
> libraries have been
> upgraded and winbind installed and restarted.
> 
> During an upgrade the libnss_winbind and libnss_wins, known as the
> "winbind" and "wins" service providers for NSS, can trigger a 
> glibc defect
> which causes the upgrade to fail. The reason is that librt 
> and libpthread are
> marked as NODELETE so they wont be reloaded when a new 
> nss_winbind has been
> installed.
> 
> We can avoid the glibc bug if we link those modules only 
> against strictly
> necessary libraries. nss_winbind and nss_wins don't have to 
> be linked against
> librt nor libpthread at all.
> 
> RH Samba bug: https://bugzilla.redhat.com/show_bug.cgi?id=1754575
> RH glibc bug: https://bugzilla.redhat.com/show_bug.cgi?id=1748197
> 
> -- 
> You are receiving this mail because:
> You are the QA Contact for the bug.
> You are the assignee for the bug.
> 

My last lintian output. 

W: samba source: changelog-should-mention-nmu
W: samba source: newer-standards-version 4.4.0 (current is 4.3.0)
E: libsmbclient: missing-dependency-on-libc needed by
usr/lib/x86_64-linux-gnu/libsmbclient.so.0.5.0
W: samba-dev: pkg-config-references-unknown-shared-library
usr/lib/x86_64-linux-gnu/pkgconfig/samba-policy.cpython-37m-x86_64-linux-gnu
.pc -lsamba-policy (line 11)
E: samba-vfs-modules: missing-dependency-on-libc needed by
usr/lib/x86_64-linux-gnu/samba/vfs/acl_tdb.so and 41 others
E: ctdb: missing-dependency-on-libc needed by usr/bin/ctdb and 15 others
W: ctdb: binary-without-manpage usr/bin/ctdb_local_daemons
W: ctdb: package-has-unnecessary-activation-of-ldconfig-trigger
W: libwbclient0-dbgsym: debug-file-with-no-debug-symbols
usr/lib/debug/.build-id/88/f3d507212267b4429bf0a0fcd2961672a2cf56.debug
E: samba: missing-dependency-on-libc needed by usr/bin/dumpmscat and 31
others
W: samba: binary-without-manpage usr/bin/dumpmscat
W: samba: binary-without-manpage usr/sbin/samba_dnsupdate
W: samba: binary-without-manpage usr/sbin/samba_spnupdate
W: samba: binary-without-manpage usr/sbin/samba_upgradedns
W: samba: package-has-unnecessary-activation-of-ldconfig-trigger
W: samba-libs: missing-depends-line
E: winbind: missing-dependency-on-libc needed by usr/bin/ntlm_auth and 16
others
W: winbind: package-has-unnecessary-activation-of-ldconfig-trigger
E: samba-common-bin: missing-dependency-on-libc needed by
usr/bin/dbwrap_tool and 5 others
W: samba-common-bin: manpage-has-errors-from-man
usr/share/man/man5/smb.conf.5.gz 3267: warning [p 38, 10.2i]: can't break
line
W: samba-common-bin: binary-without-manpage usr/sbin/samba_kcc
E: python3-samba: missing-dependency-on-libc needed by
usr/lib/python3/dist-packages/samba/_glue.cpython-37m-x86_64-linux-gnu.so
and 59 others
W: python3-samba: package-has-unnecessary-activation-of-ldconfig-trigger
E: samba-dsdb-modules: missing-dependency-on-libc needed by
usr/lib/x86_64-linux-gnu/samba/ldb/acl.so and 49 others
E: samba-testsuite: missing-dependency-on-libc needed by usr/bin/gentest and
6 others
W: samba-testsuite: package-has-unnecessary-activation-of-ldconfig-trigger
W: libwbclient0: shared-lib-without-dependency-information
usr/lib/x86_64-linux-gnu/samba/libaesni-intel.so.0
E: libwbclient0: missing-dependency-on-libc needed by
usr/lib/x86_64-linux-gnu/libsamba-util.so.0.0.1 and 7 others
E: registry-tools: missing-dependency-on-libc needed by usr/bin/regdiff and
3 others
E: libnss-winbind: missing-dependency-on-libc needed by
lib/x86_64-linux-gnu/libnss_winbind.so.2 and 1 others
E: smbclient: missing-dependency-on-libc needed by usr/bin/cifsdd and 8
others
E: libpam-winbind: missing-dependency-on-libc needed by
lib/x86_64-linux-gnu/security/pam_winbind.so
N: 20 tags overridden (15 errors, 5 warnings)
Finished running lintian.

This did produce deb files, and when testing these it ends in .. 
The following. 

Checking smb.conf with testparm
testparm: error while loading shared libraries: libreplace.so.0: cannot open
shared object file: No such file or directory
dpkg: error processing package samba-common-bin (--configure):
 installed samba-common-bin package post-installation script subprocess
returned error exit status 127

So i moved libreplace.so.0 in my test setup from libwbclient0.install to
samba-libs.install 

Resulting in. 
Checking smb.conf with testparm
testparm: error while loading shared libraries: libiov-buf.so.0: cannot open
shared object file: No such file or directory
dpkg: error processing package samba-common-bin (--configure):

So i move libiov-buf.so.0 from libwbclient0.install to samba-libs.install 

And again i tested. 
Setting up samba-common-bin (2:4.11.0+dfsg-1.2) ...
Checking smb.conf with testparm
testparm: error while loading shared libraries: libsocket-blocking.so.0:
cannot open shared object file: No such file or directory
dpkg: error processing package samba-common-bin (--configure):
 installed samba-common-bin package post-installation script subprocess
returned error exit status 127
dpkg: dependency problems prevent configuration of samba:
 samba depends on samba-common-bin (= 2:4.11.0+dfsg-1.2); however:
  Package samba-common-bin is not configured yet.

dpkg: error processing package samba (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of winbind:
 winbind depends on samba-common-bin (= 2:4.11.0+dfsg-1.2); however:
  Package samba-common-bin is not configured yet.

dpkg: error processing package winbind (--configure):
 dependency problems - leaving unconfigured
Processing triggers for man-db (2.8.5-2) ...
Processing triggers for libc-bin (2.28-10) ...
Processing triggers for systemd (241-7~deb10u1) ...
Errors were encountered while processing:
 samba-common-bin
 samba
 winbind
E: Sub-process /usr/bin/dpkg returned an error code (1)


So yes, i can move a lot around and make small steps.
But isnt this the same problem as in the bugzilla report? 
Isnt there a better way of other way to fix it, or is this a .. 
One time big change we have todo to make things better. 



So far, 

Greetz, 

Louis






More information about the Pkg-samba-maint mailing list