[patch] allow building samba-util as a single library

Brad Hards bradh at frogmouth.net
Thu Apr 14 04:45:06 MDT 2011


Hi,

OpenChange has suffered from build problems on some hosts (apparently depending 
on linker) for a little while. Typically the problem looks like
/usr/bin/ld: utils/openchange-tools.o: undefined reference to symbol 
'DEBUGLEVEL_CLASS@@SAMBA_4.0.0ALPHA15_GIT_15D6C70'
/usr/bin/ld: note: 'DEBUGLEVEL_CLASS@@SAMBA_4.0.0ALPHA15_GIT_15D6C70' is 
defined in DSO /usr/local/samba/lib/samba/libsamba-util-common.so so try adding 
it to the linker command line
/usr/local/samba/lib/samba/libsamba-util-common.so: could not read symbols: 
Invalid operation
collect2: ld returned 1 exit status
make: *** [bin/openchangepfadmin] Error 1

This shows up on Fedora 13 and 14, and Debian Sid.

I reported it as https://bugzilla.samba.org/show_bug.cgi?id=7985

The problem is that there symbols we use (debug in the example above, but it 
hits other places in openchange for other symbols) that aren't linked into 
libsamba-util, but only into the private libsamba-util-common.

The real fix for this is in the shared (samba3/samba4) resolution, but that has 
been a while, and still appears at least a little contentious (e.g. recent 
discussion on string handling).

Based on a suggestion by Andrew Bartlett (thanks), I've developed a patch that 
un-shares the code in libsamba-util-common and puts it back into libsamba-util 
for the case where its just a samba4 build (which is the case that matters to 
me).

I've tested the top level samba4 build (with and without --enable-s3build) and 
a samba3 waf build. All compile. I've also checked that the samba4 build 
(without --enable-s3build) builds ok with openchange on fedora14.

Please review and apply.

Brad
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-util-Build-samba-util-without-unresolved-symbols.patch
Type: text/x-patch
Size: 5590 bytes
Desc: not available
URL: <http://lists.samba.org/pipermail/samba-technical/attachments/20110414/c50f54dd/attachment.bin>


More information about the samba-technical mailing list