基于cmake的交叉编译工具链

栏目: C · 发布时间: 4年前

内容简介:未完,待续..交叉编译是A机器上编译生成,运行在B机器上。两个机子有不同的机器指令。工具链一般是由编译器、连接器、解释器和调试器组成,同时也包括目标机器的头文件、库文件等编译资源。

未完,待续..

一、基本概念

1. 什么是交叉编译

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

2. 什么是 工具

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

3. cmake 工具链变量

基于cmake的交叉编译工具链

二、编译流程

基于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

五、应用场景

官方示例

简单示例

六、参考链接


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Nginx Essentials

Nginx Essentials

Valery Kholodkov / Packt Publishing / 2015-7-1 / USD 34.99

About This Book Learn how to set up, configure, and operate an Nginx installation for day-to-day useExplore the vast features of Nginx to manage it like a pro, and use them successfully to run your......一起来看看 《Nginx Essentials》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具