CMAKE_前缀_路径不适用于Android
我已经从git为android编译了Qt5.15.2(仅适用于armeabi-v7a),现在我正在尝试为android编译我的Qt5应用程序。QtCreator以前编译到android的时候还不错,但因为这个原因停止了工作。所以我想从终端编译我的应用程序 以下是我的想法:-CMAKE_前缀_路径不适用于Android,android,cmake,Android,Cmake,我已经从git为android编译了Qt5.15.2(仅适用于armeabi-v7a),现在我正在尝试为android编译我的Qt5应用程序。QtCreator以前编译到android的时候还不错,但因为这个原因停止了工作。所以我想从终端编译我的应用程序 以下是我的想法:- export QT_ROOT=/path/to/QT/installation 导出此=/home/kol/untitled/build 导出ANDROID_API=21 导出工具链=$ANDROID\u NDK/toolc
export QT_ROOT=/path/to/QT/installation
导出此=/home/kol/untitled/build
导出ANDROID_API=21
导出工具链=$ANDROID\u NDK/toolchains/llvm/prebuild/linux-x86\u 64/bin/armv7a linux AndroidABI
导出CMAKE_前缀_路径=$QT_根/lib/CMAKE/Qt5
ls$CMAKE_前缀_路径
cmake-GNinja\
-DANDROID_SDK=$ANDROID_主页\
-DCMAKE_ANDROID_NDK=$ANDROID_NDK\
-DANDROID_NATIVE_API_LEVEL:STRING=$ANDROID_API\
-蒲公英ABI=armeabi-v7a\
-DANDROID\u STL=c++\u共享\
-DANDROID_工具链=叮当声\
-DCMAKE\u TOOLCHAIN\u文件:PATH=$ANDROID\u NDK/build/cmake/ANDROID.TOOLCHAIN.cmake\
-DCMAKE_CXX_编译器=$TOOLCHAIN$ANDROID_API-clang++\
-DCMAKE_C_编译器=$TOOLCHAIN$ANDROID_API-clang\
-DCMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH
-DCMAKE\u SYSTEM\u NAME=Android\
-DQT_QMAKE_可执行文件=$QT_ROOT/bin/QMAKE\
-DCMAKE\u BUILD\u TYPE=发布
这使我感到:-
Qt5Config.cmake Qt5ConfigVersion.cmake Qt5ModuleLocation.cmake
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /optHDD/AndroidNDK/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Error at CMakeLists.txt:27 (find_package):
Could not find a package configuration file provided by "QT" with any of
the following names:
Qt6Config.cmake
qt6-config.cmake
Qt5Config.cmake
qt5-config.cmake
Add the installation prefix of "QT" to CMAKE_PREFIX_PATH or set "QT_DIR" to
a directory containing one of the above files. If "QT" provides a separate
development package or SDK, be sure it has been installed.
-- Configuring incomplete, errors occurred!
See also "/home/smit/untitled/build/CMakeFiles/CMakeOutput.log".
You have changed variables that require your cache to be deleted.
Configure will be re-run and you may have to reset some variables.
The following variables have changed:
CMAKE_CXX_COMPILER= /optHDD/AndroidNDK/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi21-clang++
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:
ANDROID_SDK
CMake Generate step failed. Build files cannot be regenerated correctly.
ls命令清楚地显示了
Qt5Config.cmake
存在于给定的cmake\u PREFIX\u路径中,但cmake仍然找不到它。cmake\u PREFIX\u路径
用于安装前缀,在您的例子中是QT\u ROOT
。注意,在交叉编译的情况下,工具链可能要求安装前缀位于sysroot之下。如果要使用Qt5Config.cmake
文件指定目录,请设置QT_DIR
变量,如错误消息所示,此变量不受交叉编译的影响。