Cannot build openconnect on Oracle Solaris 11.1

Frederic Geerdink ansjovis at xs4all.nl
Sun Nov 4 12:36:18 EST 2012


Hi,

When building openconnect-4.07 on Oracle Solaris 11.1, I get the following
errors:

ld: fatal: symbol referencing errors. No output written to .libs/openconnect
collect2: ld returned 1 exit status
*** Error code

make: Fatal error: Command failed for target `all-recursive'

SolarisStudio and GNU devtools are installed.


kaizawa-tuntap-16eed2b (TunTap) builds without errors.



Env:

HZ=
TERM=xterm
SHELL=/usr/bin/bash
LD_LIBRARY_PATH=/lib:/usr/lib
PAGER=/usr/bin/less -ins
PATH=/usr/bin:/usr/sbin:/usr/ccs/bin:/usr/sfw/bin
MAIL=/var/mail/root
PWD=/tmp/openconnect-4.07
LANG=en_US.UTF-8
HOME=/root
SHLVL=2
LOGNAME=root
_=/usr/bin/env
OLDPWD=/tmp



Buildlog:

root at solaris:/tmp/openconnect-4.07# make
Making all in www
Making all in styles
Making all in inc
Making all in images
groff -t -K UTF-8 -mandoc -Txhtml ../openconnect.8 | sed -e '1,/<body>/d'
-e '/<\/body>/,$d' > openconnect.8.inc
groff: invalid option -- K
usage: groff [-abceghilpstvzCENRSUVXZ] [-Fdir] [-mname] [-Tdev] [-ffam]
       [-wname] [-Wname] [-Mdir] [-dcs] [-rcn] [-nnum] [-olist] [-Parg]
       [-Larg] [-Idir] [files...]
groff -h gives more help
/usr/bin/python "./html.py" -d . manual.xml > manual.html || (rm
manual.html; exit 1)
  CCLD   libopenconnect.la
  CCLD   openconnect
Undefined			first referenced
 symbol  			    in file
bind                                openconnect-dtls.o  (symbol belongs to
implicit dependency /lib/libsocket.so.1)
socketpair                          openconnect-tun.o  (symbol belongs to
implicit dependency /lib/libsocket.so.1)
socket                              openconnect-dtls.o  (symbol belongs to
implicit dependency /lib/libsocket.so.1)
getnameinfo                         openconnect-tun.o  (symbol belongs to
implicit dependency /lib/libsocket.so.1)
getsockopt                          openconnect-cstp.o  (symbol belongs to
implicit dependency /lib/libsocket.so.1)
connect                             openconnect-dtls.o  (symbol belongs to
implicit dependency /lib/libsocket.so.1)
in6addr_any                         openconnect-dtls.o  (symbol belongs to
implicit dependency /lib/libsocket.so.1)
inet_aton                           openconnect-tun.o  (symbol belongs to
implicit dependency /lib/libnsl.so.1)
inet_ntoa                           openconnect-tun.o  (symbol belongs to
implicit dependency /lib/libnsl.so.1)
ld: fatal: symbol referencing errors. No output written to .libs/openconnect
collect2: ld returned 1 exit status
*** Error code 1
The following command caused the error:
echo "  CCLD  " openconnect;/bin/sh ./libtool --silent --tag=CC   
--mode=link gcc   -I/usr/include/libxml2 -I/usr/include/libproxy   -g -O2 
-Wall -Wextra -Wno-missing-field-initializers -Wno-sign-compare
-Wno-unused-parameter -Werror=pointer-to-int-cast
-Wdeclaration-after-statement -Werror-implicit-function-declaration
-Wformat-nonliteral -Wformat-security -Winit-self -Wmissing-declarations
-Wmissing-include-dirs -Wnested-externs -Wpointer-arith -Wwrite-strings  
-o openconnect openconnect-xml.o  openconnect-main.o openconnect-dtls.o 
openconnect-cstp.o openconnect-mainloop.o  openconnect-tun.o
libopenconnect.la -lssl -lcrypto  -lxml2 -lproxy -lz
make: Fatal error: Command failed for target `openconnect'
Current working directory /tmp/openconnect-4.07
*** Error code 1
The following command caused the error:
fail= failcom='exit 1'; \
for f in x $MAKEFLAGS; do \
  case $f in \
    *=* | --[!k]*);; \
    *k*) failcom='fail=yes';; \
  esac; \
done; \
dot_seen=no; \
target=`echo all-recursive | sed s/-recursive//`; \
list='www '; for subdir in $list; do \
  echo "Making $target in $subdir"; \
  if test "$subdir" = "."; then \
    dot_seen=yes; \
    local_target="$target-am"; \
  else \
    local_target="$target"; \
  fi; \
  (CDPATH="${ZSH_VERSION+.}:" && cd $subdir && make  $local_target) \
  || eval $failcom; \
done; \
if test "$dot_seen" = "no"; then \
  make  "$target-am" || exit 1; \
fi; test -z "$fail"
make: Fatal error: Command failed for target `all-recursive'


configure log

root at solaris:/tmp/openconnect-4.07# ./configure
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking build system type... i386-pc-solaris2.11
checking host system type... i386-pc-solaris2.11
checking whether to enable maintainer-specific portions of Makefiles... yes
checking for a BSD-compatible install... /usr/bin/ginstall -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/gmkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for style of include used by make... GNU
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking for fdevname_r... no
checking for getline... yes
checking for strcasestr... yes
checking for asprintf... yes
checking for supported compiler flags...  -Wall -Wextra
-Wno-missing-field-initializers -Wno-sign-compare -Wno-unused-parameter
-Werror=pointer-to-int-cast -Wdeclaration-after-statement
-Werror-implicit-function-declaration -Wformat-nonliteral
-Wformat-security -Winit-self -Wmissing-declarations
-Wmissing-include-dirs -Wnested-externs -Wpointer-arith -Wwrite-strings
checking for msgfmt... no
configure: error: msgfmt could not be found. Try configuring with
--disable-nls
root at solaris:/tmp/openconnect-4.07# ./configure --disable-nls
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking build system type... i386-pc-solaris2.11
checking host system type... i386-pc-solaris2.11
checking whether to enable maintainer-specific portions of Makefiles... yes
checking for a BSD-compatible install... /usr/bin/ginstall -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/gmkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for style of include used by make... GNU
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking for fdevname_r... no
checking for getline... yes
checking for strcasestr... yes
checking for asprintf... yes
checking for supported compiler flags...  -Wall -Wextra
-Wno-missing-field-initializers -Wno-sign-compare -Wno-unused-parameter
-Werror=pointer-to-int-cast -Wdeclaration-after-statement
-Werror-implicit-function-declaration -Wformat-nonliteral
-Wformat-security -Winit-self -Wmissing-declarations
-Wmissing-include-dirs -Wnested-externs -Wpointer-arith -Wwrite-strings
checking for OPENSSL... yes
checking how to print strings... print -r
checking for a sed that does not truncate output... /usr/bin/gsed
checking for grep that handles long lines and -e... /usr/bin/ggrep
checking for egrep... /usr/bin/ggrep -E
checking for fgrep... /usr/bin/ggrep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -p
checking the name lister (/usr/bin/nm -p) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 786240
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert i386-pc-solaris2.11 file names to
i386-pc-solaris2.11 format... func_convert_file_noop
checking how to convert i386-pc-solaris2.11 file names to toolchain
format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... no
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... print -r --
checking for ar... ar
checking for archiver @FILE support... no
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -p output from gcc object... ok
checking for sysroot... no
checking for mt... mt
checking if mt is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries...
yes
checking whether -lc should be explicitly linked in... yes
checking dynamic linker characteristics... solaris2.11 ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... no
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking if library symbol versioning is available... yes (with -M)
checking for LIBXML2... yes
checking for ZLIB... no
checking for zlib without pkg-config... yes
checking for LIBPROXY... yes
checking if_tun.h usability... no
checking if_tun.h presence... no
checking for if_tun.h... no
checking linux/if_tun.h usability... no
checking linux/if_tun.h presence... no
checking for linux/if_tun.h... no
checking net/if_tun.h usability... yes
checking net/if_tun.h presence... yes
checking for net/if_tun.h... yes
checking for ENGINE_by_id() in OpenSSL... yes
checking for dtls1_stop_timer() in OpenSSL... yes
checking for python... /usr/bin/python
configure: creating ./config.status
config.status: creating Makefile
config.status: creating openconnect.pc
config.status: creating po/Makefile
config.status: creating www/Makefile
config.status: creating libopenconnect.map
config.status: creating openconnect.8
config.status: creating www/styles/Makefile
config.status: creating www/inc/Makefile
config.status: creating www/images/Makefile
config.status: executing depfiles commands
config.status: executing libtool commands
root at solaris:/tmp/openconnect-4.07#





More information about the openconnect-devel mailing list