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

Packaging Samba4 Issues



Hello all-

Long story short, I am trying to package up a current version of Samba4 for Ubuntu Precise 12.04 so that I can easily and reliably deploy it to hardware from a PPA.
I'm very new to debian packaging so I'll just start out by stating that anyone who can offer help on this is encouraged to *not* make assumptions about what I have or haven't done -- I'm new and bad at this.

In any case, the samba 4.0.3 package (available in the experimental branch of debian packages http://packages.debian.org/source/experimental/samba4) is my base package and the provided debian folder was my starting point. I didn't use the samba packages for Precise because they are woefully old. I've tried to modify the files to meet my needs but am currently hitting an error on dpkg-shlibdeps.

It spits out a lot of warnings about not being able to extract the name and version from certain libraries, but it is actually erroring out because it can't find certain libraries.
dpkg-shlibdeps: error: couldn't find library libkrb5-samba4.so.26 needed by debian/libsamdb0/usr/lib/x86_64-linux-gnu/libsamdb.so.0.0.1 (ELF format: 'elf64-x86-64'; RPATH: '/usr/lib/x86_64-linux-gnu/samba').
dpkg-shlibdeps: error: couldn't find library libgssapi-samba4.so.2 needed by debian/libsamdb0/usr/lib/x86_64-linux-gnu/libsamdb.so.0.0.1 (ELF format: 'elf64-x86-64'; RPATH: '/usr/lib/x86_64-linux-gnu/samba').
And also:
dpkg-shlibdeps: error: no dependency information found for /home/USER/samba4_4.0.4/samba4-4.0.4/debian/tmp/usr/lib/x86_64-linux-gnu/samba/libldb.so.1 (used by debian/libsamdb0/usr/lib/x86_64-linux-gnu/samba/libsamdb-common.so).

dh_shlibdeps says this:
dh_shlibdeps: dpkg-shlibdeps -Tdebian/libsamdb0.substvars debian/libsamdb0/usr/lib/x86_64-linux-gnu/samba/libldbsamba.so debian/libsamdb0/usr/lib/x86_64-linux-gnu/samba/libsamdb-common.so debian/libsamdb0/usr/lib/x86_64-linux-gnu/samba/libldb-cmdline.so debian/libsamdb0/usr/lib/x86_64-linux-gnu/libsamdb.so.0.0.1 returned exit code 2
make[1]: *** [override_dh_shlibdeps] Error 2

However, LD_LIBRARY_PATH, which to my understanding is what shlib uses to find libraries it needs to resolve dependencies, is set to a parent directory of where that library is:
LD_LIBRARY_PATH evaluates to /home/USER/samba4_4.0.4/samba4-4.0.4/debian/tmp/usr/lib/x86_64-linux-gnu/samba.
/home/USER/samba4_4.0.4/samba4-4.0.4/debian/tmp/usr/lib/x86_64-linux-gnu/samba/libkrb5-samba4.so.26

So how can't dpkg-shlibdeps find the library?

Also, the only dependency listed for libsamdb0 in the subtvars file is: libsamdb 0 libsamdb0
So why is it getting mad about libldb not having dependencies?

Here are pastebin links to the debian/rules and debian/control.

rules: http://pastebin.com/dmVcyr0Y
control: http://pastebin.com/QMdhWn3Z

And insight/help would be much appreciated.

-Mike Ray

Reply to: