无法找到“libcrypto.so”引用的符号'tcgetattr'

时间:2015-10-19 02:20:57

标签: java android android-ndk openssl

我正在为Android应用程序构建一个帮助程序库,我需要为我正在使用的一些支持库提供完整的OpenSSL实现。我正在创建一个构建链并用它编译libssllibcrypto但是在运行时我得到:

java.lang.ExceptionInInitializerError
  Caused by: java.lang.UnsatisfiedLinkError: Cannot load library:
    soinfo_relocate(linker.cpp:975): cannot locate symbol "tcgetattr" referenced by "libcrypto.so.1.0.0"...

我猜我需要做些什么来帮助在运行时找到tcgetattr

1 个答案:

答案 0 :(得分:5)

Android 19在API 19和API 21之间发生了重大变化.NDK库反映了这一变化,现在从系统库中导出了许多符号(例如 srand )。因此,设置 APP_PLATFORM (如果使用Android.mk)或 platformVersion (如果使用实验性插件)不高于应用支持的最低SDK版本非常重要。< / p>