cmake是一个比make更高级的编译配置工具,是一个跨平台的(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。它能够输出各种各样的makefile或者project文件。
cmake在ubuntu系统下默认使用系统的gcc、g++编译器,编译arm下的程序要使用arm-linux-gcc交叉编译器,需要对cmake进行设置。
1. 、交叉编译器配置
在CMakeLists.txt一开始加入相关设置:
#告知当前使用的是交叉编译方式,必须配置
SET(CMAKE_SYSTEM_NAME Linux)
#指定C交叉编译器,必须配置
SET(CMAKE_C_COMPILER "arm-linux-gcc")
#指定C++交叉编译器
SET(CMAKE_CXX_COMPILER "arm-linux-g++")
3、其他配置
在CMakeLists.txt加入相关设置:
#指定qmakE
SET(QT_QMAKE_EXECUTABLE "qmake")
#指定交叉编译环境安装目录:
SET(CMAKE_FIND_ROOT_PATH "...")
#从来不在指定目录下查找工具程序
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAMNEVER)
#只在指定目录下查找库文件
SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARYONLY)
#只在指定目录下查找头文件
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDEONLY)
3、生成makefile
在含有CMakeLists.txt文件的目录下执行:
cmake .
即可生成makefile。