Как добавить стороннюю *.so в *.apk (android, qtcreator)?



  • Всем добрый день,
    Позавчера первый раз в своей жизни запустил qtcreator, поэтому практически ничего о этой IDE не знаю. Задача следующая - имеется проект, собираемый в qtcreator-e для android-а, под armv7a. У меня есть сторонняя библиотека, собранная под эту же платформу и код, который её использует. Код я добавил, сборку - наладил. Однако, при запуске на платформе вижу в логе следующие строки:
    @E/AndroidRuntime(19468): java.lang.UnsatisfiedLinkError: Cannot load library: soinfo_link_image(linker.cpp:1635): could not load library "liblinphonearmv7.so" needed by "libTrogl.so"; caused by load_library(linker.cpp:745): library "liblinphonearmv7.so" not found@
    Эта библиотека используется моим кодом. Так как в каталоге программы на платформе я не вижу этой библиотеки, то предполагаю, что её просто нет в *.apk. Попытался нагуглить - ничего толкового не обнаружил. Подскажите, кто в теме, как добавить данную стороннюю библиотеку в *.apk?
    Ещё один странный момент - закинул на устройство все нужные сторонние библиотеки в каталог /data/data/org.some_app/lib программы, но при старте через Activity Manager - приложение стартует и завершается с той же ошибкой. Пробовал в /data/local - то же самое. Подскажите, не меняет ли am текущего каталога при запуске приложения?
    Если пост не вписывается в формат русской ветки этого форума - дайте знать, перепощу в общую, в английскую.



  • Вы можете просмотреть содержимое apk разжав его архиватором, это обычный zip.

    Я полагаю, файл pro содержит LIBS += ... и построение не имеет ошибок компоновки.

    .\android\libs\armeabi-v7a содержит бибилиотеки копируемые на устройство
    .\android\res\values\libs.xml список библиотек для копирования

    Собственно, пока, все, чем могу помочь.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.