helloworld交叉编译的三种方法

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、三种方法实现简单的cmake 交叉编译

一种是命令行,一种是指定交叉编译文件,一种是cmake-gui指定编译器

二、前提

1.cmakelists.txt

代码如下(示例):

cmake_minimum_required(VERSION 3.7.1)

project(hello-world)

set(SOURCE_FILES main.c)

message(STATUS "This is BINARY dir " ${PROJECT_BINARY_DIR})
message(STATUS "This is SOURCE dir " ${PROJECT_SOURCE_DIR})

add_executable(hello-world ${SOURCE_FILES})

2.helloworld.c

##helloworld.c


#include <stdio.h>

int main() {
	printf("Hello World.\n");
	
	return 0;
}

3.jc.cmake

set(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_PROCESSOR arm)
 


set(CMAKE_C_COMPILER ${tools}/usr/bin/arm-linux-gnueabihf-gcc)
set(CMAKE_CXX_COMPILER ${tools}/usr/bin/arm-linux-gnueabihf-g++)

命令行

代码如下(示例):

cmake -D CMAKE_TOOLCHAIN_FILE="/path/to/jc.cmake" ..

之后执行make即可生成

jc.cmake

在这里插入图片描述
选择specify toolchain file for cross-compiling,并选择为jc.cmake,之后生成即可

cmake-gui选择第四种,specify options

在这里插入图片描述
和jc.cmake里声明的类似,主要声明系统、架构、gcc、g++四个变量,也是相同的make,即可生成
之后执行make即可生成

总结

以上总结了三种可以交叉编译的方法

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清清紫金

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值