Я создал две общие библиотеки - libvpx.so и libmyapp.so. Библиотека libmyapp.so зависит от libvpx.so.Как разрешены общие библиотеки?
Файл .apk содержит библиотеки по стандарту lib/armeabi
.
В моем файле Java, у меня есть:
class MyVPX {
static {
System.LoadLibrary("myapp");
}
...
}
Когда приложение запускается, я получаю неудовлетворенный-стыковку ошибку, libvpx.so не был найден при загрузке libmyapp.so.
Если я явно загрузить libvpx.so, все работает, как ожидалось:
class MyVPX {
static {
System.LoadLibrary("vpx");
System.LoadLibrary("myapp");
}
...
}
мне интересно, если кто-нибудь знает, что причины этого?
Связано ли libmyapp с libvpx (например, с '-lvpx')? – Delyan
Ссылка задана, но не с "-lvpx." В NDK у него есть другой механизм для связанных с приложениями общих библиотек. Кроме того, если ссылка не указана, я бы не получил неудовлетворенную ссылку-ошибку :-). С уважением. – Peter
Кто знает, вы можете использовать dlopen * и * compile time linking. :) В общем, путь к исходной библиотеке apk добавлен в свойство 'java.library.path', поэтому эта зависимость должна быть решена. Можете ли вы опубликовать Application.mk, Android.mk, любые другие соответствующие Make-файлы и полная трассировка стека исключения? – Delyan