[Samba] Samba 4 make fails(openSUSE 12.1)

steve steve at steve-ss.com
Mon Nov 28 22:23:03 MST 2011


On 28/11/11 21:14, Adam Tauno Williams wrote:
> On Mon, 2011-11-28 at 20:16 +0100, steve wrote:
>> On 28/11/11 16:23, Adam Tauno Williams wrote:
>>> On Mon, 2011-11-28 at 17:16 +0200, Michael Wood wrote:
>>>> 2011/11/28 Samba-JP oota<ribbon at samba.gr.jp>:
>>>>> On Mon, Nov 28, 2011 at 05:52:55AM -0500, Adam Tauno Williams wrote
>>>>>> Yep.  I updated my test VM to openSUSE 12.1 [Bind 9.8!!!].  And I get
>>>>>> the same failure when building.
>>>>>>> make fails:
>>>>>>> [ 976/3909] Compiling source4/lib/tls/tls.c
>>>>>>> ../source4/lib/tls/tls.c: In function ‘tls_init_server’:
>>>>>>> ../source4/lib/tls/tls.c:508:2: error: implicit declaration of function
>>>>>>> ‘gnutls_transport_set_lowat’ [-Werror=implicit-function-declaration]
>>>>>>> ../source4/lib/tls/tls.c: In function ‘tls_init_client’:
>>>>>>> ../source4/lib/tls/tls.c:569:2: warning:
>>>>>>> ‘gnutls_certificate_type_set_priority’ is deprecated (declared at
>>>>>>> /usr/include/gnutls/compat.h:288) [-Wdeprecated-declarations]
>>>>>>> cc1: some warnings being treated as errors
>>>>>>> Waf: Leaving directory `/home/steve/samba-master/bin'
>>>>>>> Build failed:  ->   task failed (err #1):
>>>>>>>            {task: cc tls.c ->   tls_1.o}
>>>>>>> make: *** [all] Error 1
>>>>> My test server (openSUSE 12.1 x86-64) has no probrem
>>>>> [ 985/3936] Compiling source4/lib/tls/tls.c
>>>>> [ 986/3936] Compiling source4/lib/tls/tlscert.c
>>>>> ../source4/lib/tls/tlscert.c:174:6: warning: no previous prototype for ‘tls_cert_dummy’ [-Wmissing-prototypes]
>>>>> [ 987/3936] Compiling source4/lib/tls/tls_tstream.
>>>>> .....
>>>> Could it have something to do with what packages are installed?  e.g.
>>>> if you don't have the GnuTLS devel package installed it breaks?
>>>> I don't have an OpenSUSE box to test this theory.
>>> I have libgnutls-devel-3.0.3-5.2.1.x86_64 installed.
>>> GCC is "gcc (SUSE Linux) 4.6.2".
>> I have
>> rpm -q gcc
>> gcc-4.6-15.1.3.i586
>> rpm -q libgnutls-devel
>> libgnutls-devel-3.0.3-5.1.2.i586
>> make is ok on ubuntu 11.10 but not with openSUSE 12.1
>> What are we missing?
>> Any ideas?
>
> Use an older gcc?  I pulled down gcc-3.3 using zypper.
>
> $ CPP=/usr/bin/cpp-3.3 CC=/usr/bin/gcc-3.3 ./configure.developer
> --prefix=/opt/s4
> Checking for program gcc or cc           : /usr/bin/gcc-3.3
> Checking for program ar                  : /usr/bin/ar
> Checking for program ranlib              : /usr/bin/ranlib
> ...
>
> But when it gets down to the TLS stuff it still fails.
>
> Waf: Entering directory `/root/samba-master/bin'
> [ 126/3908] Generating VERSION
> [ 162/3908] Generating smbd/build_options.c
> [ 977/3908] Compiling source4/lib/tls/tls.c
> ../source4/lib/tls/tls.c: In function `tls_init_server':
> ../source4/lib/tls/tls.c:508: error: implicit declaration of function
> `gnutls_transport_set_lowat'
> ../source4/lib/tls/tls.c: In function `tls_init_client':
> ../source4/lib/tls/tls.c:569: warning:
> `gnutls_certificate_type_set_priority' is deprecated (declared
> at /usr/include/gnutls/compat.h:290)
> Waf: Leaving directory `/root/samba-master/bin'
> Build failed:  ->  task failed (err #1):
> 	{task: cc tls.c ->  tls_1.o}
> make: *** [all] Error 1
>
Got passed the error:

In samba-master directory.

added:--enable-gnutls \

to config.developer

cat configure.developer
#!/bin/sh
`dirname $0`/configure -C \
         --enable-developer \
         --enable-socket-wrapper \
         --enable-nss-wrapper \
         --enable-gnutls \
         "$@"

Then from:http://aur.archlinux.org/packages.php?ID=40043

sed -i -e "s/gnutls_transport_set_lowat(tlss->tls_session, 0);//" \
source4/lib/tls/tls_tstream.c
sed -i -e "s/gnutls_transport_set_lowat(tls->session, 0);//" \
source4/lib/tls/tls.c

Am now at 2503/3909 of the make. The only test box I have is a 512Mb 
acer laptop running 12.1 from a 16Gb usb stick. Not ideal for code of 
this size!

HTH Steve






More information about the samba mailing list