关注
鸿蒙技术社区
,回复
【鸿蒙】
送
价值
399元
的鸿蒙
开发板套件
(数量有限,先到先得)
,还可以
免费下载
鸿蒙
入门资料
!
👇
扫码
立刻关注
👇
专注开源技术,共建鸿蒙生态
每年的过年前夕,手中的项目一定会告急,而自己又缺乏三头六臂七十二变等特技,所以只能在鸿蒙社区先消失一阵子了。
今天再看社区的帖子,发现大家的进步可不一般,各种案例示例层出不穷,一片欣欣向荣的景象!
在这样的氛围下,我又来了分享的欲望,希望自己的一点积累能为鸿蒙宇宙添砖加瓦。
考虑到很多同学可能是新手,这里首先要谈谈交叉编译的概念!
交叉编译是嵌入开发中的基础概念,名字看起来高端大气上档次,但其本质还是编译,也就是把 C/C++ 代码编译成可执行程序,和我们初学 C/C++ 语言时的 Hello World!程序编译几乎完全相同。
那么,你可能会问,不同之处在哪里?
不同之处仅仅是,Hello World!在本机编译,可执行程序在本机运行;而交叉编译则是:程序在本机编译,而可执行程序在设备运行(即:本机无法直接运行交叉编译得到的二进制文件)。
对于大型嵌入式企业,开发环境一般分为两个部分:
产品代码位于代码服务器上,每个员工远程登录代码服务器之后创建自己的代码分支,之后就可以进行代码编辑和编译了。
其中,代码编辑是在员工的工作 PC 上完成;而代码编译则是在服务器上完成。编译得到的二进制可执行程序,需要拷贝到工作 PC 上之后烧写到设备中。
大家通过类比可以发现,其实目前的鸿蒙设备开发方式就是企业级嵌入式产品的开发方式,只不过进行了缩减而已!
代码编辑和代码编译在“不同的机器上”,两台机器通过网络互联,交叉编译得到的二进制文件通过代码编辑所在的环境烧写到设备。