make test fails on SLES 10.2 ia64 = undefined symbol: SSL_CTX_set_client_cert_cb

Mark Lavi mlavi at sgi.com
Thu May 7 16:26:22 EDT 2009


Hello, I'm new to building neon but I've been able to reproduce this
problem with neon 0.28.4 and 0.28.3 on SLES 10.2 ia64 architecture.
During make check, four tests fail and stop their section from
completing, reporting: undefined symbol: SSL_CTX_set_client_cert_cb

I have successfully built OpenSSL 0.9.8k and libxml2 2.7.3 in
/data/bootstrap and their predecessors (and make check) for some time,
so I am confident that they are in working order.
Can anyone help me? I believe I've provided everything I can and I
couldn't find a similar build error in the mail archives or via Google.
Thanks!
 
Here is what I encounter when configure, make, and make check inside my
build system:
 
./configure --prefix=/data/bootstrap --with-libs=/data/bootstrap
--without-gssapi --with-ssl=openssl --with-libxml2 \
 LD_LIBRARY_PATH=/data/bootstrap/lib LDFLAGS=-L/data/bootstrap/lib
CPPFLAGS=-I/data/bootstrap/include
 
Here's the pertinent openSSL portion...
     [exec] checking zlib.h usability... yes
     [exec] checking zlib.h presence... yes
     [exec] checking for zlib.h... yes
     [exec] checking for inflate in -lz... yes
     [exec] configure: zlib support enabled, using -lz
     [exec] checking whether to enable ACL support in neon... yes
     [exec] checking for pkg-config... /usr/bin/pkg-config
     [exec] checking for openssl pkg-config data... yes
     [exec] configure: using SSL library configuration from pkg-config
     [exec] checking openssl/ssl.h usability... yes
     [exec] checking openssl/ssl.h presence... yes
     [exec] checking for openssl/ssl.h... yes
     [exec] checking openssl/opensslv.h usability... yes
     [exec] checking openssl/opensslv.h presence... yes
     [exec] checking for openssl/opensslv.h... yes
     [exec] checking OpenSSL version is >= 0.9.7... yes
     [exec] configure: OpenSSL >= 0.9.7; EGD support not needed in neon
     [exec] configure: SSL support enabled, using OpenSSL (0.9.7 or
later)
     [exec] checking for CRYPTO_set_idptr_callback... no
     [exec] configure: Thread-safe SSL not supported
[snip]
     [exec] checking for openssl... /data/bootstrap/bin/openssl
     [exec] checking for certutil... notfound
     [exec] checking for pk12util... notfound
     [exec] checking for pkg-config... (cached) /usr/bin/pkg-config
     [exec] configure: creating ./config.status
     [exec] config.status: creating neon-config
     [exec] config.status: creating Makefile
     [exec] config.status: creating src/Makefile
     [exec] config.status: creating test/Makefile
     [exec] config.status: creating neon.pc
     [exec] config.status: creating test/makekeys
     [exec] config.status: creating config.h
     [exec] config.status: config.h is unchanged
     [exec] config.status: executing libtool commands
     [exec] configure: Configured to build neon 0.28.4:
     [exec]
     [exec]   Install prefix:  /data/bootstrap
     [exec]   Compiler:        gcc
     [exec]   XML Parser:      libxml 2.7.3
     [exec]   SSL library:     SSL support enabled, using OpenSSL (0.9.7
or later)
     [exec]   zlib support:    zlib support enabled, using -lz
     [exec]   Build libraries: Shared=no, Static=yes

...then make clean and make jobs complete withour error, so onto make
check...
 
     [exec] Executing command: make --jobs=4 check 2>&1
     [exec] make[1]: Entering directory
`/home/mlavi/WORKAREAS/content/webplatform/src/build/dev/bootstrap/neon-
0.28.4/src'
     [exec] make[1]: Nothing to be done for `all'.
     [exec] make[1]: Leaving directory
`/home/mlavi/WORKAREAS/content/webplatform/src/build/dev/bootstrap/neon-
0.28.4/src'
     [exec] make[1]: Entering directory
`/home/mlavi/WORKAREAS/content/webplatform/src/build/dev/bootstrap/neon-
0.28.4/test'
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c uri-tests.c -o uri-tests.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c common/tests.c -o common/tests.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c common/child.c -o common/child.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c utils.c -o utils.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c util-tests.c -o util-tests.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c string-tests.c -o string-tests.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c socket.c -o socket.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c session.c -o session.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c request.c -o request.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c auth.c -o auth.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c basic.c -o basic.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c stubs.c -o stubs.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c redirect.c -o redirect.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -DSOCKET_SSL -c ./socket.c -o socket-ssl.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c ssl.c -o ssl.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c compress.c -o compress.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c xml.c -o xml.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c xmlreq.c -o xmlreq.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c acl.c -o acl.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c props.c -o props.lo
     [exec] /bin/sh ../libtool --silent --mode=compile gcc
-I/data/bootstrap/include    -I/usr/include
-I/data/bootstrap/include/libxml2 -I.. -I. -I../src -I../test/common -g
-O2 -prefer-pic  -c lock.c -o lock.lo
     [exec] rm -rf ca
     [exec] OPENSSL=/data/bootstrap/bin/openssl \
     [exec]  /bin/sh makekeys . 2>makekeys.out
     [exec] gzip -c --no-name ../NEWS > file1.gz
     [exec] gzip -c --name ../NEWS > file2.gz
     [exec] gzip -c --no-name ../NEWS > trailing.gz
     [exec] echo "hello, world" >> trailing.gz
     [exec] dd of=badcsum.gz if=file1.gz bs=1 count=`perl -e 'printf
"%d", (stat("file1.gz"))[7] - 8;'`
     [exec] 21781+0 records in
     [exec] 21781+0 records out
     [exec] 21781 bytes (22 kB) copied, 0.0891364 seconds, 244 kB/s
     [exec] echo 'broken!' >> badcsum.gz
     [exec] dd if=file1.gz of=truncated.gz bs=2048 count=2
     [exec] 2+0 records in
     [exec] 2+0 records out
     [exec] 4096 bytes (4.1 kB) copied, 6.695e-05 seconds, 61.2 MB/s
     [exec] dd of=corrupt1.gz if=file1.gz bs=1 count=500
     [exec] 500+0 records in
     [exec] 500+0 records out
     [exec] 500 bytes (500 B) copied, 0.00179765 seconds, 278 kB/s
     [exec] cat ../NEWS >> corrupt1.gz
     [exec] cat ../NEWS > corrupt2.gz
     [exec] touch empty.gz
     [exec] cat ../NEWS > random.txt
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o libtest.la common/tests.lo
common/child.lo utils.lo ../src/libneon.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o uri-tests uri-tests.lo libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o util-tests util-tests.lo
libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o string-tests string-tests.lo
libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o socket socket.lo libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o session session.lo libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o request request.lo libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o auth auth.lo libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o basic basic.lo libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o stubs stubs.lo libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o redirect redirect.lo libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o socket-ssl socket-ssl.lo
libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o ssl ssl.lo libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o compress compress.lo libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o xml xml.lo libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o xmlreq xmlreq.lo libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o acl acl.lo libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o props props.lo libtest.la
     [exec] /bin/sh ../libtool --silent --mode=link gcc
-L/data/bootstrap/lib  -no-install -o lock lock.lo libtest.la
     [exec] -> running `uri-tests':
[snip]
     [exec] <- summary for `uri-tests': of 15 tests run: 15 passed, 0
failed. 100.0%
     [exec] -> running `util-tests':
[snip]
     [exec] <- summary for `util-tests': of 8 tests run: 8 passed, 0
failed. 100.0%
     [exec] -> running `string-tests':
[snip]
     [exec] <- summary for `string-tests': of 26 tests run: 26 passed, 0
failed. 100.0%
     [exec] -> running `socket':
[snip]
     [exec] <- summary for `socket': of 39 tests run: 39 passed, 0
failed. 100.0%
     [exec] -> running `session':
     [exec]  0. fill_uri.............. pass
     [exec]  1. fill_proxy_uri........ pass
     [exec]  2. hostports............. ./session: symbol lookup error:
./session: undefined symbol: SSL_CTX_set_client_cert_cb
     [exec] -> running `request':
[snip]
     [exec] <- summary for `request': of 87 tests run: 87 passed, 0
failed. 100.0%
     [exec] -> running `auth':
     [exec]  0. lookup_localhost...... pass
     [exec]  1. basic................. pass
     [exec]  2. retries............... pass
     [exec]  3. forget_regress........ pass
     [exec]  4. tunnel_regress........ ./auth: symbol lookup error:
./auth: undefined symbol: SSL_CTX_set_client_cert_cb
     [exec] -> running `basic':
[snip]
     [exec] <- summary for `basic': of 10 tests run: 10 passed, 0
failed. 100.0%
     [exec] -> running `stubs':
     [exec]  0. null_test............. pass
     [exec] <- summary for `stubs': of 1 tests run: 1 passed, 0 failed.
100.0%
     [exec] -> running `redirect':
[snip]
     [exec] <- summary for `redirect': of 6 tests run: 6 passed, 0
failed. 100.0%
     [exec] -> running `socket-ssl':
     [exec]  0. multi_init............ pass
     [exec]  1. resolve............... pass
     [exec]  2. resolve_numeric....... pass
     [exec]  3. init_ssl.............. ./socket-ssl: symbol lookup
error: ./socket-ssl: undefined symbol: SSL_CTX_set_client_cert_cb
     [exec] -> running `ssl':
     [exec]  0. init.................. pass
     [exec]  1. load_server_certs..... pass
     [exec]  2. trust_default_ca...... ./ssl: symbol lookup error:
./ssl: undefined symbol: SSL_CTX_set_client_cert_cb
     [exec] -> running `compress':
[snip]
     [exec] <- summary for `compress': of 21 tests run: 21 passed, 0
failed. 100.0%
     [exec] -> running `xml':
[snip]
     [exec] <- summary for `xml': of 5 tests run: 5 passed, 0 failed.
100.0%
     [exec] -> running `xmlreq':
[snip]
     [exec] <- summary for `xmlreq': of 3 tests run: 3 passed, 0 failed.
100.0%
     [exec] -> running `acl':
[snip]
     [exec] <- summary for `acl': of 4 tests run: 4 passed, 0 failed.
100.0%
     [exec] -> running `props':
[snip]
     [exec] <- summary for `props': of 7 tests run: 7 passed, 0 failed.
100.0%
     [exec] -> running `lock':
[snip]
     [exec] <- summary for `lock': of 14 tests run: 14 passed, 0 failed.
100.0%
     [exec] make[1]: *** [check] Error 127
     [exec] make[1]: Leaving directory
`/home/mlavi/WORKAREAS/content/webplatform/src/build/dev/bootstrap/neon-
0.28.4/test'
     [exec] make: *** [check] Error 2

Here is what tests/debug.log excerpts look like, but they turn up
nothing useful to me:
 
[snip]
Version string: neon 0.28.4: Library build, IPv6, libxml 2.7.3, zlib
1.2.3, OpenSSL 0.9.8k 25 Mar 2009.
******* Running test 0: fill_uri ********
HTTP session to http://localhost:7777 begins.
sess: Destroying session.
******* Running test 1: fill_proxy_uri ********
HTTP session to http://localhost:7777 begins.
sess: Destroying session.
******* Running test 2: hostports ********
HTTP session to http://host.name:80 begins.
sess: Destroying session.
HTTP session to http://host.name:555 begins.
sess: Destroying session.
HTTP session to http://host.name:443 begins.
sess: Destroying session.
HTTP session to https://host.name:80 begins.
Version string: neon 0.28.4: Library build, IPv6, libxml 2.7.3, zlib
1.2.3, OpenSSL 0.9.8k 25 Mar 2009.
******* Running test 0: lookup_localhost ********
******* Running test 1: single_get_clength ********
[snip]
******* Running test 4: tunnel_regress ********
HTTP session to https://localhost:443 begins.
Version string: neon 0.28.4: Library build, IPv6, libxml 2.7.3, zlib
1.2.3, OpenSSL 0.9.8k 25 Mar 2009.
******* Running test 0: lookup_localhost ********
******* Running test 1: content_type ********
[snip]
Version string: neon 0.28.4: Library build, IPv6, libxml 2.7.3, zlib
1.2.3, OpenSSL 0.9.8k 25 Mar 2009.
******* Running test 0: multi_init ********
******* Running test 1: resolve ********
******* Running test 2: resolve_numeric ********
******* Running test 3: init_ssl ********
Version string: neon 0.28.4: Library build, IPv6, libxml 2.7.3, zlib
1.2.3, OpenSSL 0.9.8k 25 Mar 2009.
******* Running test 0: init ********
Identity match for '': bad
Identity match for '': bad
Identity match for '': bad
******* Running test 1: load_server_certs ********
d2i_X509_fp failed: no start line
Identity match for '': bad
******* Running test 2: trust_default_ca ********
HTTP session to https://localhost:7777 begins.
Version string: neon 0.28.4: Library build, IPv6, libxml 2.7.3, zlib
1.2.3, OpenSSL 0.9.8k 25 Mar 2009.
******* Running test 0: init ********
******* Running test 1: not_compressed ********

Thanks for any help!
..............................

Mark Lavi, Senior Web Producer @ SGI
mlavi at sgi.com || tel: 408.524.7347 || sgi.com




More information about the neon mailing list