Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Building android app with libQt5Widgets.so or libQt5Widgets_arm64-v8a.so?



  • Hi All,

    I'm a newbie in qt but managed to build from source both qt-5.15 and qt creator with which I can now build native and webassembly (via emscripten) apps. So the next step was to build qt for android which I also managed. Though qt creator cannot automatically detect any android kits despite the fact that I have green ticks for all essential packages listed (but still says that I don't have all of them). So I added a kit, a qt version and a c/c++ compiler manually for the android setup. Tried building a simple project (which builds fine natively and as wasm) and in the end I get three errors:

    clang++: no such file or directory: /home/r0ller/Android/qt5-install/lib/libQt5Widgets.so
    clang++: no such file or directory: /home/r0ller/Android/qt5-install/lib/libQt5Gui.so
    clang++: no such file or directory: /home/r0ller/Android/qt5-install/lib/libQt5Core.so

    Indeed, they are not there (those are under the native qt install directory path) but I do have all of them in the android specific directory with an _arm64-v8a suffix, so I have:

    /home/r0ller/Android/qt5-install/lib/libQt5Widgets_arm64-v8a.so
    /home/r0ller/Android/qt5-install/lib/libQt5Gui_arm64-v8a.so
    /home/r0ller/Android/qt5-install/lib/libQt5Core_arm64-v8a.so

    Why is my toolchain not looking for the arm specific version of the libs?

    Thanks for any hints!

    Best regards,
    r0ller



  • Seems that I managed to figure it out (though haven't deployed the stuff on Android yet): qt creator picks wrong qmake (and probably make as well) most probably due to seeing the qt version set up for android erroneous (no clue why). So I got rid of all system bin directories from PATH, copied the effective qmake call (as it seemed it would call the right qmake and make), jumped to the project build directory in a terminal and pasted it in the command line (omitting qmake_all at the end as it had no effect). After a few seconds, I got my arm64-v8a.so built for my project.


Log in to reply