您的位置首页>企业动态>

HarmonyOS编译Linux的编译环境搭建

导读大家好,我是极客范的本期栏目编辑小友,现在为大家讲解HarmonyOS编译Linux的编译环境搭建问题。当然,获得董事会并启动董事会的第一步是营

大家好,我是极客范的本期栏目编辑小友,现在为大家讲解HarmonyOS编译Linux的编译环境搭建问题。

当然,获得董事会并启动董事会的第一步是营造环境。论坛已经为我们准备了详细的策略。我没有独立的Ubuntu机器,所以我在Windows上安装了VMWare虚拟机作为编译鸿蒙系统的Linux环境。过程有些曲折,好几次都想放弃,想直接伸手去拿Ubuntu的形象,但最终还是设法坚持了下来。现在虽然多花了一点时间去思考,但是也非常值得,让我对鸿蒙系统OS的结构和编译过程有了更直观的了解。来说说我们在过程中踩过的坑,希望能帮你少走弯路。

作者的环境是Ubuntu 16.0,运行在VMWare 14中。物理机是Windows10。

1.构建Linux的编译环境

直接参考官方文件就可以了(门户网站)。每个工具的安装版本和推荐与文章中的一致。如果真的不可能,可以更高。如果较低,可能会留下隐患,难以检查。其中,SCons不容易下载。如果网络不好,其官网往往无法访问。使用灵活的下载工具,然后复制到Ubuntu进行离线安装。

二.源代码编译

建议从镜像站点下载压缩文件,方便快捷。至于源代码放在哪里,建议按照官方说明放在Ubuntu中,用Samba等工具设置为共享目录,然后从Windows中访问进行烧录调试。一开始我把源代码放在VMWare提供的共享目录下,觉得这样会更方便。我发现当我打开源代码时,我提示了一堆错误,大意是我无法创建软连接。我没太在意。因此,编译过程中出现了一个又一个错误。后来才知道,VMWare的共享目录分区格式是FAT32,不支持创建软连接的操作。将源代码压缩包复制到Ubuntu并解压,然后编译成功。所以老老实实用Samba比较安全。

Ubuntu共享目录设置(原创文章):

1.输入以下命令:

sudo apt-get安装samba

sudo apt-get安装samba-common

2.修改samba配置文件

sudo vim /etc/samba/smb.conf

最后,添加以下内容:

[工作]

注释=samba主目录

path=/home/harmony/

公共=是

可浏览=是

公共=是

可写=是

只读=否

有效用户=和谐

创建掩码=0777

目录掩码=0777

#强制用户=无人

#力组=无组

可用=是

3.保存退出后,输入以下命令设置samba密码,建议123456。

sudo smbpasswd -a harmony

4.重新启动samba服务

sudo服务smbd重新启动

5.windows映射

在文件夹路径中输入虚拟机的IP地址,尝试并最终将其映射到网络驱动器。

三.燃烧的

官方的燃烧方案是Hiburn或Jlink。如果使用Hiburn模式,可以使用devecodevictool中的集成功能,但是在使用VSCode DevEcoDeviceTool时,作者总是提示“端口号下拉列表因为缺少serialport模块而无法刷新……”,重新安装serialport无法解决。最后在官方的帮助下,用Hiburn工具直接将其成功烧毁。

燃烧时要注意一点

件事情,一般的操作流程是,设置好参数、串口号、选择烧录文件后,先不点Connect,勾选Auto burn即上电自动烧录,再点Connect,按一下板子上的RST按钮重新上电,Hiburn就会进行烧录了。这时如果想让板子跑起来,需要Disconnect一下,把Auto burn勾掉,再Connect,按RST按钮,就会看到串口打印的信息了。如下图:

图中的[DEMO] Hello Harmony!就是我在HelloWorld.c中打印的内容。第一个Hello World程序就这样完成了。

HarmonyOS对大家来说都是一个比较新的东西,一步一个脚印才能掌握扎实。这里把过程记录下来,希望对大家有所帮助。编辑:hfy

顺利拿到板子,开搞,第一步当然是环境搭建。论坛的大大们早就为我们准备好了详细的攻略。笔者并没有一台独立的Ubuntu机器,于是在Windows上安装VMWare虚拟机作为编译HarmonyOS的Linux环境。过程有些曲折,几次想要放弃,想直接伸手拿做好的Ubuntu镜像,不过坚持到最后还是成功了。现在想想虽然花的时间有点多,但也非常值得,让我对鸿蒙OS的结构和编译过程有了一个更加直观的认识。下面讲一下过程中踩过的坑,希望帮助大家少走弯路。

笔者的环境是Ubuntu 16.0,运行在VMWare 14中。物理机是Windows10。

一. Linux的编译环境搭建

直接参考官方文档就好了(传送门)。各个工具的安装版本,推荐和文章中一致,实在不行高一点也可以,如果低了就有可能留下隐患,且很难排查。其中SCons不是很好下载,如果网络不好的,它的官方网站经常访问不到。灵活运用下载工具,再拷贝进Ubuntu离线安装。

二. 源代码编译

推荐从镜像站点下载压缩文件,方便快捷。关于源代码放在哪里,推荐按照官方说的放在Ubuntu中,用Samba等工具设置成共享目录,再从Windows访问,进行烧录和调试。我在一开始把源代码放在了VMWare提供的共享目录中,以为这样更加方便,发现在解压源代码的时候,提示了一堆错误,大意是无法创建软连接。我也没有太在意,结果编译时的错误一个接一个。后来才了解到,VMWare的共享目录分区格式是FAT32,不支持创建软连接操作。重新拷贝源码压缩包进Ubuntu并解压后,成功编译。所以说还是老老实实的用Samba比较稳妥。

Ubuntu共享目录设置(原文章):

1.输入如下命令:

sudo apt-get install samba

sudo apt-get install samba-common

2.修改samba配置文件

sudo vim /etc/samba/smb.conf

在最后加入如下内容:

[work] comment = samba home directory path = /home/harmony/ public = yes browseable = yes public = yes writeable = yes read only = no valid users = harmony create mask = 0777 directory mask = 0777 #force user = nobody #force group = nogroup available = yes

3.保存退出后,输入如下命令,设置samba密码,建议123456即可

sudo smbpasswd -a harmony

4.重启samba服务

sudo service smbd restart

5.windows映射

在文件夹路径输入虚拟机的IP地址访问一下试试,最后映射成网络驱动器即可。

三. 烧录

官方给的烧录方案是Hiburn或者Jlink。如果用Hiburn方式可以采用DevEcoDeviceTool中的集成功能,但笔者在使用VSCode+DevEcoDeviceTool时,总是提示“因为缺少serialport模块,无法刷新端口号下拉列表...”,重新安装serialport也不能解决。最终在官方大大们的帮助下,改为直接用Hiburn工具烧录成功。

烧录时需要注意一件事情,一般的操作流程是,设置好参数、串口号、选择烧录文件后,先不点Connect,勾选Auto burn即上电自动烧录,再点Connect,按一下板子上的RST按钮重新上电,Hiburn就会进行烧录了。这时如果想让板子跑起来,需要Disconnect一下,把Auto burn勾掉,再Connect,按RST按钮,就会看到串口打印的信息了。如下图:

图中的[DEMO] Hello Harmony!就是我在HelloWorld.c中打印的内容。第一个Hello World程序就这样完成了。

HarmonyOS对大家来说都是一个比较新的东西,一步一个脚印才能掌握扎实。这里把过程记录下来,希望对大家有所帮助。编辑:hfy

.dfma { position: relative; width: 1000px; margin: 0 auto; } .dfma a::after { position: absolute; left: 0; bottom: 0; width: 30px; line-height: 1.4; text-align: center; background-color: rgba(0, 0, 0, .5); color: #fff; font-size: 12px; content:"广告"; } .dfma img { display: block; }
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。