Cannot find the character "tcgetattr" referenced by "libcrypto.so"

I am creating a helper library for Android applications, and I need a full OpenSSL implementation for some of the support libraries that I use. I create a build chain and compile libssl and libcrypto with it, but at runtime I get:

 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"... 

I assume I need to do something to help find tcgetattr at runtime?

+5
source share
1 answer

Android runtime has changed significantly between API 19 and API 21. NDK libraries reflect this change, and many characters (like srand ) are now exported from system libraries. Therefore, it is important to set APP_PLATFORM (if using Android.mk) or platformVersion (if using an experimental plugin) not higher than the lowest SDK version supported by your application.

+5
source

Source: https://habr.com/ru/post/1233989/


All Articles