Building 3.0.15 (master branch)

lfinsto at lfinsto at
Wed Mar 14 19:21:14 CET 2012


I've just updated my PC to SuseLinux 12.1 and thought I would try building
and installing GNUTLS from the master branch of the git repository.
(For what it's worth, the GNUTLS installed using yast2 is version 3.0.3,
so pretty recent.)

I succeeded for the most part, but there were a couple of problems and I
thought a report might be useful:

I have a Dell Precision T3400

uname -a
Linux pcfinston 3.1.0-1.2-desktop #1 SMP PREEMPT Thu Nov 3 14:45:45 UTC
2011 (187dde0) x86_64 x86_64 x86_64 GNU/Linux

I installed nettle, p11-kit, autoconf, automake, libtool, autogen, etc.,
using yast2.  There were no problems, except for one with autogen (see
below).  In particular, there were no problems with libhogweed not being
created or other problems with dependencies.  I didn't have to install any
prerequisites by hand.  I did actually have a problem with HAVE_LIBNETTLE
being undefined, but that was because there was a configure script,, config.h, etc., in lib/.  Deleting them worked, and I then
deleted the whole working copy, cloned the repository again and started
again.  This error did not occur again and these files don't exist in this

I got errors with aclocal && autoconf the first time through, but

autoreconf -fvim

worked (after touching ChangeLog, as below). I forgot to test this after
recloning the repository and just ran autoreconf -fvim immediately. required file `./ChangeLog' not found
   autoreconf: automake failed with exit status: 1

touch ChangeLog

autoreconf -fvim

configure --prefix=/home/lfinsto/gnutls_dev/master_install


   File cs.po does not exist. If you are a translator, you can create it
through 'msginit'.

configure --prefix=/home/lfinsto/gnutls_dev/master_install --disable-nls

The first time through, I solved this problem by running `msginit -i
* -o *.po' for the various files, but for a couple it didn't work
and I used for the input, e.g., -i -o xx.po
(I'm not sure which ones didn't work anymore).  I was just guessing that
it would work and don't understand this.


   certtool-args.c:51:13: error: conflicting types for 'optionAlias'
   ../src/libopts/autoopts/options.h:1031:12: note: previous declaration
of 'optionAlias' was here

make[3]: *** [libcmd_certtool_la-certtool-args.lo] Error 1
make[3]: Leaving directory `/home/lfinsto/gnutls_dev/gnutls_master/src'


    *  DO NOT EDIT THIS FILE   (certtool-args.c)
    *  It has been AutoGen-ed  March 14, 2012 at 06:30:08 PM by AutoGen
    *  From the definitions    certtool-args.def
    *  and the template file   options


    *  DO NOT EDIT THIS FILE   (options.h)
    *  It has been AutoGen-ed  February 26, 2012 at 11:08:44 AM by AutoGen
    *  From the definitions    funcs.def
    *  and the template file   options_h

I had a good look around the file system, but I was unable to locate
funcs.def or options_h (I didn't look very hard for `options').
The declaration is not in certtool-args.def.

I therefore changed

extern void optionAlias(tOptions* pOpts, tOptDesc* pOD, unsigned int alias);


extern int optionAlias(tOptions* pOpts, tOptDesc* pOD, unsigned int alias);

in certtool-args.c.

It worked, but it's obviously not a good solution.


/bin/sh: line 75: /usr/share/autogen/texi2mdoc: Permission denied
/bin/sh: line 194: /usr/share/autogen/mdoc2man: Permission denied

As root:

chmod a+rx /usr/share/autogen/texi2mdoc
chmod a+rx /usr/share/autogen/mdoc2man

This would seem to be a problem with the autogen installation (I installed
it using yast2).


Lots of these warnings:

mini-eagain2.c:189:41: warning: cast to pointer from integer of different
size [-Wint-to-pointer-cast]

(it's a 64-bit machine)

make install


I hope this report is of some use to you.

Laurence Finston

Laurence Finston
Gesellschaft fuer wissenschaftliche Datenverarbeitung mbH
Am Fassberg 11
37077 Goettingen

Telefon: 	+49 551 201-1882
E-Mail: 	lfinsto at

More information about the Gnutls-devel mailing list