【发布时间】:2014-04-09 17:18:18
【问题描述】:
我正在尝试在支持 SSL/TLS 的 Android 上构建 PJSIP。
我按照this answer(没有fips,作为shared-.so 库)成功构建了OpenSSL,并将其安装在~/android(创建了~/android/ssl 目录)中。
现在,当我这样做时
./configure-android --with-ssl=/home/andrea/android/ssl
查看 config.log,第一个错误状态
<ndk-directories-and-stuff>/arm-linux-androideabi/bin/ld: warning: libdl.so, needed by /home/andrea/android/ssl/lib/libcrypto.so, not found (try using -rpath or -rpath-link)
许多未定义的引用随之而来。
因此禁用 SSL 支持:
aconfigure:7012: result: ** OpenSSL libraries not found, disabling SSL support **
ac_cv_header_openssl_ssl_h=yes
ac_cv_lib_ssl_SSL_library_init=no
CFLAGS=' -I/home/andrea/android/android-ndk-r8e/platforms/android-14/arch-arm/usr/include -DPJ_IS_BIG_ENDIAN=0 -DPJ_IS_LITTLE_ENDIAN=1 -I/home/andrea/android/ssl/include'
LDFLAGS=' -nostdlib -L/home/andrea/android/android-ndk-r8e/platforms/android-14/arch-arm/usr/lib/ -L/home/andrea/android/ssl/lib'
ac_no_ssl=''
libssl_present=''
openssl_h_present='1'
但 libdl.so 存在于 ndk 的目录中:
<ndk-dir>/platforms/android-14/arch-arm/usr/lib/
我想我必须告诉 ld 其他库在哪里, ld的建议是什么意思?
try using -rpath or -rpath-link
我不明白 -rpath 或 rpath-link 是什么或在哪里应用它们。
有什么想法吗?
【问题讨论】: