基于cmake的交叉编译工具链

49次阅读

共计 612 个字符,预计需要花费 2 分钟才能阅读完成。

未完, 待续..

一、基本概念

1. 什么是交叉编译

交叉编译是 A 机器上编译生成,运行在 B 机器上。两个机子有不同的机器指令。

2. 什么是工具链

工具链一般是由编译器、连接器、解释器和调试器组成,同时也包括目标机器的头文件、库文件等编译资源。

3. cmake 工具链变量

二、编译流程

三、编译方法

1. cmake 命令行编译

  • 命令

    # 通过 CMAKE_TOOLCHIAIN_FILE 指定交叉编译工具链文件
    cmake -D CMAKE_TOOLCHIAIN_FILE="/path/to/my-cmake-toolchain-file.cmake" ..
  • 交叉编译工具链文件为一个后缀为.cmake 文件的 cmake 文件。

2. cmake-gui 图形界面编译

  • 此处待完善 …

四、cmake 工具链变量详解

4.1 目标系统变量

CMAKE_SYSTEM_NAME
CMAKE_SYSTEM_PROCESSOR

4.2 交叉编译器

CMAKE_C_COMPILER
CMAKE_CXX_COMPILER

4.3 外部依赖库

CMAKE_FIND_ROOT_PATH
CMAKE_FIND_ROOT_PATH_MODE_PROGRAM
CMAKE_FIND_ROOT_PATH_MODE_INCLUDE
CMAKE_FIND_ROOT_PATH_MODE_LIBRARY
CMAKE_FIND_ROOT_PATH_MODE_PACKAGE

五、应用场景

官方示例
简单示例

六、参考链接

  • 交叉工具链
  • CMake 交叉编译

正文完
 0