[Pkg-samba-maint] nearly built 3.2.0~pre2-1

Michael Adam ma at sernet.de
Thu Mar 27 08:18:36 UTC 2008


Hi Christian,

Christian Perrier wrote:
> This morning, I attempted to build 3.2.0~pre2 after Steve's excellent
> work on merging trunk in our experimental branch.
> 
> This was nearly successful until:
> 
> sh_shlibdeps
> dpkg-shlibdeps: warning: symbol lp_parm_bool used by debian/samba/usr/lib/samba/vfs/default_quota.so found in none of the libraries.
> dpkg-shlibdeps: warning: symbol smb_register_vfs used by debian/samba/usr/lib/samba/vfs/default_quota.so found in none of the libraries.
> dpkg-shlibdeps: warning: symbol lp_parm_int used by debian/samba/usr/lib/samba/vfs/default_quota.so found in none of the libraries.
> dpkg-shlibdeps: warning: symbol smb_register_vfs used by debian/samba/usr/lib/samba/vfs/readonly.so found in none of the libraries.
> dpkg-shlibdeps: warning: symbol lp_parm_string_list used by debian/samba/usr/lib/samba/vfs/readonly.so found in none of the libraries.
> dpkg-shlibdeps: failure: couldn't find library libtalloc.so.1 needed by debian/samba/usr/bin/pdbedit (its RPATH is '').
> Note: libraries are not searched in other binary packages that do not have any shlibs or symbols file.
> To help dpkg-shlibdeps find private libraries, you might need to set LD_LIBRARY_PATH.
> dh_shlibdeps: command returned error code 512
> make: *** [binary-arch] Error 1
> dpkg-buildpackage: failure: fakeroot debian/rules binary gave error exit status 2
> 
> (this was a pbuilder build)
> 
> Could it be that we need to Build-Depend on libtalloc-dev ?
> 
> With my Candide suit (French idiotism to mean "ingenuous"), I blindly
> suspect that the following upstream change could be related to that:
> 
>     * Initial support for using subsystems as shared libraries.
>       Use talloc, tdb, and libnetapi as shared libraries internally.

That is right, this (along with subsequent commits) is the cause of the
libtalloc.so.1 problem. (But spontaneously, I don't know about the symbols
missing from the vfs modules.)

When there is no system talloc library (as is there at least in
SID as Jelmer told me), Samba needs to provide its own. There are
several choices:

* link all internal libs (except for libwbclient) statically
  (just as with samba 3.0.X). THis is achieved by specifying
  --disable-shared-libs to configure.

* you can decide to only link libtalloc statically by specifying
  --with-static-libs=libtalloc
 
* when you link libtalloc dynamically, you need to provide
  libtalloc.so on systems that don't have it. it is installed
  into the $LIBDIR folder by plain samba install. 

  so you can put it in the samba-common package (e.g.) or
  build samba3's own libtalloc packages. (by cd'ing to
  source/lib/talloc and building there).

* there are several ways to tell samba the location of the shared
  libs, whent they are not stored in the ld library path:
  - link with an rpath
  - provide an ld.so.conf file (/etc/ld.so.conf.d/samba.conf, say).
  - always specify a LD_LIBRARY_PATH environment variable.

Cheers, Michael

-- 
Michael Adam <ma at sernet.de>  <obnox at samba.org>
SerNet GmbH, Bahnhofsallee 1b, 37081 Göttingen
phone: +49-551-370000-0, fax: +49-551-370000-9
AG Göttingen, HRB 2816, GF: Dr. Johannes Loxen
http://www.SerNet.DE, mailto: Info @ SerNet.DE
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 206 bytes
Desc: not available
Url : http://lists.alioth.debian.org/pipermail/pkg-samba-maint/attachments/20080327/7ddb5e72/attachment.pgp 


More information about the Pkg-samba-maint mailing list