[SFLphone] Build error on OpenSUSE Build System (OBS) - undefined references to SSL symbols
Alexandre Savard
alexandre.savard at savoirfairelinux.com
Tue Feb 9 12:31:03 EST 2010
The error occurs in the test folder which means that SFLphone deamon compiled successfully.
SFLphone's test suite is far from beeing complete, except for very specific features added
recently such as the centralized audio management or the SDES parser.
I don't see why openssl is not linked to PJSIP in the test folder.
You can disable the test suite compilation simply commenting the last argument of SUBDIRS
in sflphone/sflphone-common/Makefile.am
SUBDIRS = libs src ringtones man $(TESTS_DIR)
SUBDIRS = libs src ringtones man # $(TESTS_DIR)
I'll try to compile the application on OpenSUSE on my side.
Thanks
----- Mail Original -----
De: "René Krell" <rkrell at gmx.net>
À: sflphone at lists.savoirfairelinux.net
Envoyé: Mardi 9 Février 2010 05h40:59 GMT -05:00 USA/Canada - États de l'Est
Objet: [SFLphone] Build error on OpenSUSE Build System (OBS) - undefined references to SSL symbols
I'm trying to integrate sflphone 0.9.7 to the OpenSUSE Build System, but I get the following build error:
---
Making all in test
make[2]: Entering directory `/usr/src/packages/BUILD/sflphone-0.9.7/sflphone-common/test'
CXX numbercleanerTest.o
CXX TestMain.o
CXXLD numbercleanerTester
/usr/src/packages/BUILD/sflphone-0.9.7/sflphone-common/libs/pjproject/pjsip/lib/libpjsip-sfl-x86_64-suse-linux-gnu.a(sip_transport_tls_ossl.o): In function `lis_destroy':
sip_transport_tls_ossl.c:(.text+0x2f3): undefined reference to `SSL_CTX_free'
/usr/src/packages/BUILD/sflphone-0.9.7/sflphone-common/libs/pjproject/pjsip/lib/libpjsip-sfl-x86_64-suse-linux-gnu.a(sip_transport_tls_ossl.o): In function `ssl_write_bytes':
sip_transport_tls_ossl.c:(.text+0x3e4): undefined reference to `SSL_write'
sip_transport_tls_ossl.c:(.text+0x3f5): undefined reference to `SSL_get_error'
/usr/src/packages/BUILD/sflphone-0.9.7/sflphone-common/libs/pjproject/pjsip/lib/libpjsip-sfl-x86_64-suse-linux-gnu.a(sip_transport_tls_ossl.o): In function `on_read_complete':
sip_transport_tls_ossl.c:(.text+0x9e1): undefined reference to `SSL_read'
sip_transport_tls_ossl.c:(.text+0x9f3): undefined reference to `SSL_get_error'
sip_transport_tls_ossl.c:(.text+0xaf7): undefined reference to `SSL_pending'
/usr/src/packages/BUILD/sflphone-0.9.7/sflphone-common/libs/pjproject/pjsip/lib/libpjsip-sfl-x86_64-suse-linux-gnu.a(sip_transport_tls_ossl.o): In function `tls_shutdown':
sip_transport_tls_ossl.c:(.text+0xcb0): undefined reference to `SSL_shutdown'
/usr/src/packages/BUILD/sflphone-0.9.7/sflphone-common/libs/pjproject/pjsip/lib/libpjsip-sfl-x86_64-suse-linux-gnu.a(sip_transport_tls_ossl.o): In function `tls_destroy':
sip_transport_tls_ossl.c:(.text+0x1021): undefined reference to `SSL_free'
/usr/src/packages/BUILD/sflphone-0.9.7/sflphone-common/libs/pjproject/pjsip/lib/libpjsip-sfl-x86_64-suse-linux-gnu.a(sip_transport_tls_ossl.o): In function `ssl_accept':
sip_transport_tls_ossl.c:(.text+0x1193): undefined reference to `SSL_state'
sip_transport_tls_ossl.c:(.text+0x11a4): undefined reference to `SSL_state'
sip_transport_tls_ossl.c:(.text+0x11e3): undefined reference to `SSL_accept'
sip_transport_tls_ossl.c:(.text+0x11f0): undefined reference to `SSL_get_error'
sip_transport_tls_ossl.c:(.text+0x1256): undefined reference to `SSL_want'
sip_transport_tls_ossl.c:(.text+0x1267): undefined reference to `SSL_want'
sip_transport_tls_ossl.c:(.text+0x12f3): undefined reference to `SSL_state'
sip_transport_tls_ossl.c:(.text+0x1394): undefined reference to `SSL_set_accept_state'
/usr/src/packages/BUILD/sflphone-0.9.7/sflphone-common/libs/pjproject/pjsip/lib/libpjsip-sfl-x86_64-suse-linux-gnu.a(sip_transport_tls_ossl.o): In function `tls_create':
sip_transport_tls_ossl.c:(.text+0x16b5): undefined reference to `SSL_new'
sip_transport_tls_ossl.c:(.text+0x16d0): undefined reference to `SSL_set_fd'
/usr/src/packages/BUILD/sflphone-0.9.7/sflphone-common/libs/pjproject/pjsip/lib/libpjsip-sfl-x86_64-suse-linux-gnu.a(sip_transport_tls_ossl.o): In function `ssl_connect':
sip_transport_tls_ossl.c:(.text+0x1ba6): undefined reference to `SSL_state'
sip_transport_tls_ossl.c:(.text+0x1bb7): undefined reference to `SSL_get_fd'
sip_transport_tls_ossl.c:(.text+0x1bc7): undefined reference to `SSL_state'
sip_transport_tls_ossl.c:(.text+0x1c79): undefined reference to `SSL_ctrl'
sip_transport_tls_ossl.c:(.text+0x1cba): undefined reference to `SSL_connect'
sip_transport_tls_ossl.c:(.text+0x1cc7): undefined reference to `SSL_get_error'
sip_transport_tls_ossl.c:(.text+0x1d04): undefined reference to `SSL_set_connect_state'
sip_transport_tls_ossl.c:(.text+0x1d82): undefined reference to `SSL_state'
sip_transport_tls_ossl.c:(.text+0x1db1): undefined reference to `SSL_want'
sip_transport_tls_ossl.c:(.text+0x1dc2): undefined reference to `SSL_want'
sip_transport_tls_ossl.c:(.text+0x1ed3): undefined reference to `SSL_set_fd'
/usr/src/packages/BUILD/sflphone-0.9.7/sflphone-common/libs/pjproject/pjsip/lib/libpjsip-sfl-x86_64-suse-linux-gnu.a(sip_transport_tls_ossl.o): In function `pjsip_tls_transport_start':
sip_transport_tls_ossl.c:(.text+0x2696): undefined reference to `TLSv1_method'
sip_transport_tls_ossl.c:(.text+0x269e): undefined reference to `SSL_CTX_new'
sip_transport_tls_ossl.c:(.text+0x26d5): undefined reference to `SSL_CTX_load_verify_locations'
sip_transport_tls_ossl.c:(.text+0x2712): undefined reference to `SSL_CTX_free'
sip_transport_tls_ossl.c:(.text+0x2821): undefined reference to `SSLv23_method'
sip_transport_tls_ossl.c:(.text+0x2869): undefined reference to `SSL_CTX_set_default_passwd_cb'
sip_transport_tls_ossl.c:(.text+0x2874): undefined reference to `SSL_CTX_set_default_passwd_cb_userdata'
sip_transport_tls_ossl.c:(.text+0x289d): undefined reference to `SSL_CTX_use_certificate_chain_file'
sip_transport_tls_ossl.c:(.text+0x28d6): undefined reference to `SSL_CTX_free'
sip_transport_tls_ossl.c:(.text+0x28e0): undefined reference to `SSLv2_method'
sip_transport_tls_ossl.c:(.text+0x2909): undefined reference to `SSLv3_method'
sip_transport_tls_ossl.c:(.text+0x2972): undefined reference to `SSL_CTX_use_PrivateKey_file'
sip_transport_tls_ossl.c:(.text+0x29af): undefined reference to `SSL_CTX_free'
sip_transport_tls_ossl.c:(.text+0x29d3): undefined reference to `SSL_library_init'
sip_transport_tls_ossl.c:(.text+0x29d8): undefined reference to `SSL_load_error_strings'
sip_transport_tls_ossl.c:(.text+0x2a5c): undefined reference to `SSL_CTX_set_verify'
sip_transport_tls_ossl.c:(.text+0x2aa2): undefined reference to `SSL_CTX_set_cipher_list'
sip_transport_tls_ossl.c:(.text+0x2adb): undefined reference to `SSL_CTX_free'
collect2: ld returned 1 exit status
make[2]: *** [numbercleanerTester] Error 1
make[2]: Leaving directory `/usr/src/packages/BUILD/sflphone-0.9.7/sflphone-common/test'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/packages/BUILD/sflphone-0.9.7/sflphone-common'
make: *** [all] Error 2
---
In the RPM spec file I have the following build and installation dependencies
and instructions:
---
...
BuildRequires: libpulse-devel
BuildRequires: commoncpp2-devel
BuildRequires: libccrtp-devel
BuildRequires: libsamplerate-devel
BuildRequires: dbus-1-devel
BuildRequires: libexpat-devel
BuildRequires: libgsm-devel
BuildRequires: speex-devel
BuildRequires: libcppunit-devel
BuildRequires: alsa-devel
BuildRequires: libuuid-devel
BuildRequires: gcc-c++
BuildRequires: update-desktop-files
BuildRequires: libzrtpcpp-devel
BuildRequires: libopenssl-devel
Requires: libsamplerate
Requires: libexpat1
Requires: commoncpp2
Requires: libgsm1
Requires: libspeex
Requires: dbus-1
Requires: libasound2
Requires: libpulse0
Requires: libccrtp1
Requires: libzrtpcpp
Requires: libopenssl0_9_8
...
%build
cd sflphone-common
cd libs/pjproject
./autogen.sh
%configure
make dep
make clean
make
autoconf aconfigure.ac > aconfigure
cd -
./autogen.sh
%configure
make
...
---
What might be going wrong here?
Thanks,
René
_______________________________________________
SFLphone mailing list
SFLphone at lists.savoirfairelinux.net
http://lists.savoirfairelinux.net/mailman/listinfo/sflphone
More information about the SFLphone
mailing list