基于cmake的交叉编译工具链

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

内容简介:未完,待续..交叉编译是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

五、应用场景

官方示例

简单示例

六、参考链接


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

查看所有标签

猜你喜欢:

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

信息烟尘

信息烟尘

戴维·申克 / 黄锫坚 / 江西教育出版社 / 2002 / 14.50元

今天,我们被大量的信息淹没了:传真、电子邮件、各种新闻、消息和铺天盖地的广告,正如人们以前预示的那样:出现了一个令人鼓舞的信息时代,媒体专家兼网络评论员戴维·申克透过这些繁荣的表象,揭示了大量的无用的信息对我们造成的干扰,或者说,“信息烟尘”对我们个人的健康(包括精神上的和肉体上的)及对社会造成的极大危害。这《信息烟尘:在信息爆炸中求生存》宣告了“信息时代”神话的破灭。一起来看看 《信息烟尘》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

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

在线 XML 格式化压缩工具