Package: dacs
Version: 1.4.28b-2
Severity: normal
User: [email protected]
Usertags: unresolved-symbols-so

The Ubuntu toolchain is a bit stricter (I think "ld --as-needed" is the
relevant thing) and fails to link programs against libdacs.so as
follows:

  /bin/bash /build/buildd/dacs-1.4.28b/src/libtool --silent --mode=link gcc -g 
-O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat 
-Werror=format-security -fPIC  -D_FORTIFY_SOURCE=2 -I. -I../include 
-I/usr/include -I/usr/include -I/usr/kerberos/include  -Wl,-Bsymbolic-functions 
-Wl,-z,relro  -L/usr/lib  -Wl,-rpath,/usr/lib -L/usr/lib  -Wl,-rpath,/usr/lib 
-L/usr/kerberos/lib -export-dynamic -o auth -DPROG auth.c 
/build/buildd/dacs-1.4.28b/src/libdacs.la -Wl,-Bsymbolic-functions -Wl,-z,relro 
 -L/usr/lib  -Wl,-rpath,/usr/lib -L/usr/lib  -Wl,-rpath,/usr/lib 
-L/usr/kerberos/lib -export-dynamic -lpam -lcrypt -lrt -lresolv -lexpat -lnsl 
-lm -ldl  -lssl -lcrypto -lexpat  -Wl,-rpath,/usr/lib -rpath /usr/lib    
-lxmlsec1-openssl -L/usr/lib -Wl,-rpath,/usr/lib -lxmlsec1-openssl -lxmlsec1 
-lxslt -lxml2 -lssl -lcrypto 
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_CTX_free'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_CTX_get_cert_store'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_get_error'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_get_fd'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_get_peer_certificate'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_CTX_load_verify_locations'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_CTX_set_cipher_list'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_set_verify_result'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_library_init'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_set_bio'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSLv23_method'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_read'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_get_verify_result'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_CTX_set_verify_depth'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_ctrl'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_shutdown'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_CTX_set_verify'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_CTX_new'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_CTX_set_default_verify_paths'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`shm_open'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_CTX_use_certificate_chain_file'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_connect'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_load_error_strings'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`crypt'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_free'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_write'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_CTX_use_PrivateKey_file'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_CTX_ctrl'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`shm_unlink'
  /build/buildd/dacs-1.4.28b/src/.libs/libdacs.so: undefined reference to 
`SSL_new'
  collect2: error: ld returned 1 exit status

I think the proper thing to do here is to make sure that libdacs.so is
adequately linked by adding $(LIBS) to its link line.

  * Link libdacs.so with $(LIBS).

diff -Nru dacs-1.4.28b/debian/patches/series dacs-1.4.28b/debian/patches/series
--- dacs-1.4.28b/debian/patches/series  2013-06-20 16:22:29.000000000 +0100
+++ dacs-1.4.28b/debian/patches/series  2013-07-17 11:47:28.000000000 +0100
@@ -1,3 +1,4 @@
 icx-libxml-patch.diff
 ssl_hook_Fixup
 libtool-shell
+shared-library-linkage
diff -Nru dacs-1.4.28b/debian/patches/shared-library-linkage 
dacs-1.4.28b/debian/patches/shared-library-linkage
--- dacs-1.4.28b/debian/patches/shared-library-linkage  1970-01-01 
01:00:00.000000000 +0100
+++ dacs-1.4.28b/debian/patches/shared-library-linkage  2013-07-17 
11:48:07.000000000 +0100
@@ -0,0 +1,18 @@
+Description: Link libdacs.so with $(LIBS)
+Author: Colin Watson <[email protected]>
+Forwarded: no
+Last-Update: 2013-07-17
+
+Index: b/src/Makefile.in
+===================================================================
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -1422,7 +1422,7 @@
+ 
+ $(SHARED_LIB): $(LIBDOBJECTS)
+       rm -f $(SHARED_LIB)
+-      $(LTLINKLIB) $(LIBDOBJECTS)
++      $(LTLINKLIB) $(LIBDOBJECTS) $(LIBS)
+ #     $(LTLINKLIB) $(LIBDOBJECTS) -lcrypto -lcrypt -lexpat -lssl -ldl -lrt -lm
+ 
+ .c.o:

Thanks,

-- 
Colin Watson                                       [[email protected]]


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to