Build failure on OpenSolaris machine.
Dr. David Kirkby
david.kirkby at onetel.net
Sun Feb 20 22:52:59 CET 2011
I've tried to build GnuTLS on a Sun Ultra 27 (Intel Xeon) running OpenSolaris
06/2009. I've built a lot of software on here without hassle, but the current
version of GnuTLS will not build. (Version 2.2.1 builds OK, though I've not
tried any other versions).
The fact there are copies of the gmp library in both /usr/local/lib and
/usr/local/gcc-4.5.0/lib seems to be causing the problem. But there seems no way
to specify where the libraries should be found.
If one builds gcc, there are options to specify where the gmp library is kept.
My GCC is configured with this option.
--with-gmp=/usr/local/gcc-4.5.0
but there seems to be no similar option for GnuTLS.
$configure
<snip>
checking whether byte ordering is bigendian... no
checking for C/C++ restrict keyword... __restrict
checking if gcc/ld supports -Wl,--output-def... no
checking if LD -Wl,--version-script works... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating gnutls-extra.pc
config.status: creating gl/Makefile
config.status: creating includes/Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
configure: summary of build options:
version: 2.10.4 shared 42:13:16
Host type: i386-pc-solaris2.11
Install prefix: /usr/local
Compiler: gcc -std=gnu99
Warning flags: errors: warnings:
Library types: Shared=yes, Static=yes
Valgrind: no
Guile wrappers: yes
C++ library: yes
OpenSSL library: yes
/dev/crypto: no
$ make
<snip>
C -DPIC -o .libs/libguile_gnutls_v_1_la-core.o
libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../..
-I../../lib/includes -I../../lib/includes -I../../libextra/includes -I../.. -I.
-Wno-strict-prototypes -I../../lib/gl -I../../lib/gl -I/usr/include/gmp
-D_REENTRANT -pthreads -g -O2 -MT libguile_gnutls_v_1_la-errors.lo -MD -MP -MF
.deps/libguile_gnutls_v_1_la-errors.Tpo -c errors.c -fPIC -DPIC -o
.libs/libguile_gnutls_v_1_la-errors.o
libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../..
-I../../lib/includes -I../../lib/includes -I../../libextra/includes -I../.. -I.
-Wno-strict-prototypes -I../../lib/gl -I../../lib/gl -I/usr/include/gmp
-D_REENTRANT -pthreads -g -O2 -MT libguile_gnutls_v_1_la-utils.lo -MD -MP -MF
.deps/libguile_gnutls_v_1_la-utils.Tpo -c utils.c -fPIC -DPIC -o
.libs/libguile_gnutls_v_1_la-utils.o
libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../..
-I../../lib/includes -I../../lib/includes -I../../libextra/includes -I../.. -I.
-Wno-strict-prototypes -I../../lib/gl -I../../lib/gl -I/usr/include/gmp
-D_REENTRANT -pthreads -g -O2 -MT libguile_gnutls_extra_v_1_la-extra.lo -MD -MP
-MF .deps/libguile_gnutls_extra_v_1_la-extra.Tpo -c extra.c -fPIC -DPIC -o
.libs/libguile_gnutls_extra_v_1_la-extra.o
libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../..
-I../../lib/includes -I../../lib/includes -I../../libextra/includes -I../.. -I.
-Wno-strict-prototypes -I../../lib/gl -I../../lib/gl -I/usr/include/gmp
-D_REENTRANT -pthreads -g -O2 -MT libguile_gnutls_v_1_la-errors.lo -MD -MP -MF
.deps/libguile_gnutls_v_1_la-errors.Tpo -c errors.c -o
libguile_gnutls_v_1_la-errors.o >/dev/null 2>&1
libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../..
-I../../lib/includes -I../../lib/includes -I../../libextra/includes -I../.. -I.
-Wno-strict-prototypes -I../../lib/gl -I../../lib/gl -I/usr/include/gmp
-D_REENTRANT -pthreads -g -O2 -MT libguile_gnutls_v_1_la-utils.lo -MD -MP -MF
.deps/libguile_gnutls_v_1_la-utils.Tpo -c utils.c -o
libguile_gnutls_v_1_la-utils.o >/dev/null 2>&1
mv -f .deps/libguile_gnutls_v_1_la-errors.Tpo
.deps/libguile_gnutls_v_1_la-errors.Plo
libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../..
-I../../lib/includes -I../../lib/includes -I../../libextra/includes -I../.. -I.
-Wno-strict-prototypes -I../../lib/gl -I../../lib/gl -I/usr/include/gmp
-D_REENTRANT -pthreads -g -O2 -MT libguile_gnutls_extra_v_1_la-extra.lo -MD -MP
-MF .deps/libguile_gnutls_extra_v_1_la-extra.Tpo -c extra.c -o
libguile_gnutls_extra_v_1_la-extra.o >/dev/null 2>&1
mv -f .deps/libguile_gnutls_v_1_la-utils.Tpo .deps/libguile_gnutls_v_1_la-utils.Plo
mv -f .deps/libguile_gnutls_extra_v_1_la-extra.Tpo
.deps/libguile_gnutls_extra_v_1_la-extra.Plo
libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../..
-I../../lib/includes -I../../lib/includes -I../../libextra/includes -I../.. -I.
-Wno-strict-prototypes -I../../lib/gl -I../../lib/gl -I/usr/include/gmp
-D_REENTRANT -pthreads -g -O2 -MT libguile_gnutls_v_1_la-core.lo -MD -MP -MF
.deps/libguile_gnutls_v_1_la-core.Tpo -c core.c -o libguile_gnutls_v_1_la-core.o
>/dev/null 2>&1
mv -f .deps/libguile_gnutls_v_1_la-core.Tpo .deps/libguile_gnutls_v_1_la-core.Plo
/bin/sh ../../libtool --tag=CC --mode=link gcc -std=gnu99
-Wno-strict-prototypes -I../../lib/gl -I../../lib/gl -I/usr/include/gmp
-D_REENTRANT -pthreads -g -O2 -o libguile-gnutls-v-1.la -rpath /usr/local/lib
libguile_gnutls_v_1_la-core.lo libguile_gnutls_v_1_la-errors.lo
libguile_gnutls_v_1_la-utils.lo ../../lib/libgnutls.la ../../lib/gl/liblgnu.la
-I/usr/include/gmp -D_REENTRANT -pthreads -lguile -lltdl -lgmp -lsocket -lnsl
-lm -lltdl
libtool: link: gcc -std=gnu99 -shared -Wl,-z -Wl,text -Wl,-h
-Wl,libguile-gnutls-v-1.so.0 -o .libs/libguile-gnutls-v-1.so.0.0.0
.libs/libguile_gnutls_v_1_la-core.o .libs/libguile_gnutls_v_1_la-errors.o
.libs/libguile_gnutls_v_1_la-utils.o -Wl,-z -Wl,allextract
../../lib/gl/.libs/liblgnu.a -Wl,-z -Wl,defaultextract
-R/export/home/drkirkby/gnutls-2.10.4/lib/.libs -R/usr/local/gcc-4.5.0/lib
-R/usr/local/lib -R/usr/local/gcc-4.5.0/lib ../../lib/.libs/libgnutls.so -ltasn1
-lz -lgcrypt -lgpg-error /usr/lib/libguile.so -lgmp
/usr/local/gcc-4.5.0/lib/libgmp.so -lsocket -lnsl -lm -lltdl -lc -pthreads
-pthreads -pthreads
ld: fatal: symbol `scm_cell' is multiply-defined:
(file .libs/libguile_gnutls_v_1_la-core.o type=FUNC; file
.libs/libguile_gnutls_v_1_la-errors.o type=FUNC);
ld: fatal: symbol `scm_double_cell' is multiply-defined:
(file .libs/libguile_gnutls_v_1_la-core.o type=FUNC; file
.libs/libguile_gnutls_v_1_la-errors.o type=FUNC);
ld: fatal: symbol `scm_array_handle_ref' is multiply-defined:
(file .libs/libguile_gnutls_v_1_la-core.o type=FUNC; file
.libs/libguile_gnutls_v_1_la-errors.o type=FUNC);
ld: fatal: symbol `scm_array_handle_set' is multiply-defined:
(file .libs/libguile_gnutls_v_1_la-core.o type=FUNC; file
.libs/libguile_gnutls_v_1_la-errors.o type=FUNC);
ld: fatal: symbol `scm_is_pair' is multiply-defined:
(file .libs/libguile_gnutls_v_1_la-core.o type=FUNC; file
.libs/libguile_gnutls_v_1_la-errors.o type=FUNC);
ld: fatal: symbol `scm_cell' is multiply-defined:
(file .libs/libguile_gnutls_v_1_la-core.o type=FUNC; file
.libs/libguile_gnutls_v_1_la-utils.o type=FUNC);
ld: fatal: symbol `scm_double_cell' is multiply-defined:
(file .libs/libguile_gnutls_v_1_la-core.o type=FUNC; file
.libs/libguile_gnutls_v_1_la-utils.o type=FUNC);
ld: fatal: symbol `scm_array_handle_ref' is multiply-defined:
(file .libs/libguile_gnutls_v_1_la-core.o type=FUNC; file
.libs/libguile_gnutls_v_1_la-utils.o type=FUNC);
ld: fatal: symbol `scm_array_handle_set' is multiply-defined:
(file .libs/libguile_gnutls_v_1_la-core.o type=FUNC; file
.libs/libguile_gnutls_v_1_la-utils.o type=FUNC);
ld: fatal: symbol `scm_is_pair' is multiply-defined:
(file .libs/libguile_gnutls_v_1_la-core.o type=FUNC; file
.libs/libguile_gnutls_v_1_la-utils.o type=FUNC);
ld: warning: file /usr/local/gcc-4.5.0/lib/libgmp.so: linked to
/usr/local/gcc-4.5.0/lib/gcc/i386-pc-solaris2.10/4.5.0/../../../libgmp.so:
attempted multiple inclusion of file
ld: fatal: file processing errors. No output written to
.libs/libguile-gnutls-v-1.so.0.0.0
collect2: ld returned 1 exit status
make[4]: *** [libguile-gnutls-v-1.la] Error 1
make[4]: Leaving directory `/export/home/drkirkby/gnutls-2.10.4/guile/src'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/export/home/drkirkby/gnutls-2.10.4/guile/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/export/home/drkirkby/gnutls-2.10.4/guile'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/export/home/drkirkby/gnutls-2.10.4'
make: *** [all] Error 2
--
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing in e-mail?
Dave
More information about the Gnutls-devel
mailing list