当前位置: 首页 > backend >正文

嵌入式项目之交叉编译m2440篇

在Linux虚拟机上写好代码,并进行编译,确保编译无出错,准备移植到开发板上的工作。

系统烧入

首先先将开发板的USB接口以及电源接口接上,这里要记住先不能打开开关S1,原因是打开开关的时候系统会自动判断S2所在的位置,如果先打开S1而S2不在NOR位置上,系统不会进入到NOR。连接好了之后下载友善之臂的2440开发工具,minitools进行烧写系统。如下图

 如果接线都没有错误,但是左下角显示红色没有连接上,那么就是驱动的问题,这里使用驱动精灵进行检测,会检测到一个安卓的驱动没装,点击安装即可。这时候一定要上电,且S2在NOR上。

左下角点变为绿色之后就可以进行系统的烧入了。

交叉编译

交叉编译(架构不同)在电脑上编译,在开发板上运行。电脑(虚拟机)一般是X86架构,而开发板是ARM架构,这两个架构的二进制文件差别较大,所以需要交叉编译。

先在开发板官网找到其资源arm-linux-gcc,然后进行安装。使用命令arm-linux-gcc不发生找不到命令即可。

这次项目使用到一个需要交叉编译的库json,我们先进到json库的路径下,使用make clean命令清空之前编译的文件

./configure --host=arm-linux CC=arm-linux-gcc --prefix=/home/json_arm_install

生成ARM架构的makefile文件,然后使用make和make install 即可安装。

安装完成之后,需要修改一下项目的makefile,使其使用arm-linux-gcc进行编译

 DEBUG=-DARM#DEBUG=Target=mainObject=main.o select.o device.o player.o link.o socket.oCC=arm-linux-gccCFLAGS=-L /home/json_arm_install/lib -I /home/json_arm_install/include$(Target):$(Object)$(CC) $(Object) -o $(Target) -Wall -ljson $(DEBUG) $(CFLAGS) -staticclean:rm -f $(Object) $(Target)

然后将编译好的可执行文件移植到开发板上,即可运行。

http://www.xdnf.cn/news/7743.html

相关文章:

  • 基于望获操作系统的具身智能人形机器人典型应用案例
  • CompleteableFuture的异步任务编排
  • python读写bin文件
  • 《算法笔记》11.7小节——动态规划专题->背包问题 问题 C: 货币系统
  • SCAU18923--二叉树的直径
  • NC65联查单据问题总结
  • 宽带卫星通信介绍
  • 今日行情明日机会——20250520
  • 基于双通道频谱分析的振动信号故障诊断1
  • 波峰波谷策略
  • 野火鲁班猫(arrch64架构debian)从零实现用MobileFaceNet算法进行实时人脸识别(三)用yolov5-face算法实现人脸检测
  • 【BIO、NIO、AIO的区别?】
  • 【嵌入式】I2S音频接口3分钟入门
  • 独热编码笔记
  • 字符画生成(伟大的CSDN)
  • windows安装WS,实测可行
  • 2.4.1死锁的概念
  • 中小型制造业信息化战略规划指南
  • SpringBoot 自动配置
  • 【课堂笔记】指数族与广义线性模型(GLMs)
  • zipkin+micrometer实现链路追踪
  • Java 01简单集合
  • Vue3——Pinia
  • 编译原理的部分概念
  • docker常用指令总结
  • A1-A2 英语学习系列 第四集 中国版
  • HarmonyOS5云服务技术分享--ArkTS开发Node环境
  • 不同消息队列保证高可用实现方案
  • C#入门系列【基础类型大冒险】从0到1,解锁编程世界的“元素周期表”
  • 50个Java+SpringBoot+Vue毕业设计选题(含技术栈+核心功能)