@cryptohas

Почему не подключается нужная библиотека?

В сборщике подключаю библиотеку libassuan.so, подключение происходит без проблем. Также добавляю libassuan.so в папку lib/arm64-v8a/ и получаю готовый apk файл.
Когда запускаю приложение на телефоне, вылетает с ошибкой "java.lang.UnsatisfiedLinkError: dlopen failed: library libassuan.so.0 not found"
Откуда он берет "libassuan.so.0", если в папке lib указано название без ".0" в конце? Среда QtCreator
p.s. И как добавить этот самый libassuan.so.0 в папку lib, если сборщик отсекает всё, что не заканчивается на ".so"?
  • Вопрос задан
  • 73 просмотра
Пригласить эксперта
Ответы на вопрос 2
Ну так добавьте линк libassuan.so.0 на библиотеку libassuan.so
Ответ написан
Комментировать
@PavelMerk
Fullstack Web Dev
Похоже, что эта ошибка возникает из-за того, что Android ищет библиотеку с именем libassuan.so.0, а не libassuan.so. Это связано с тем, что libassuan.so является символической ссылкой на libassuan.so.0. Для решения этой проблемы вы можете попробовать один из следующих способов:

Изменить имя библиотеки в папке lib на libassuan.so.0 и обновить ссылку на нее в вашем коде.
Скопировать файлы libassuan.so и libassuan.so.0 в папку jniLibs вместо папки lib и добавить эту папку в ваш файл build.gradle.
Использовать функцию System.loadLibrary(“libassuan”) для загрузки библиотеки вместо System.load(“libassuan”).
Надеюсь, это поможет вам решить проблему.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы