目录
- 1.概述
- 2.注意事项
- 3.发现问题
- 4.解决问题
1.概述
最近大家都知道,华为出了一个中国的手机操作系统HarmonyOS,本人很是激动,因为中国终于有了自己的手机操作系统,而且我去了解了下,发现完全不同于Android和IOS操作系统,有很多人老是在说鸿蒙是套壳Android,我真的当时觉得这些人真的是崇洋媚外,就觉得东西都是国外的做的好。对于这些人我就想说,丢人。我个人很喜欢华为的鸿蒙操作系统的设计,无论是可裁剪的系统,分布式软总线,设备间流转的功能,都让人眼前一亮,所以我决定好好研究下这个系统的源码,所以自己买了一个小熊派学习,希望自己有一天能够向鸿蒙系统提交一个自己自主研发的功能,为鸿蒙系统添砖加瓦。但是获取源码还是很容易的,就是编译跑通这个系统遇到了点坎坷,所以记录一下 ,为后面想入门鸿蒙的小伙伴趟下坑。
2.注意事项
环境的安装和源码获取编译可以在小熊派的git仓库下查看文档,小熊派文档地址 ,当我们编译完后。一定要做的事情是,将下图中的文件复制到:
\bearpi-hm_micro_small\applications\BearPi\BearPi-HM_Micro\tools\download_img\kernel
下面就是复制到的路径,不复制这几个文件,刷机的时候会立即失败
当我按照文档将准备工作做好后,开始刷机,然后就出现问题了。
3.发现问题
当编译的时候,按照文档输入编译指令,但是编译出错,报的错误好像是某个文件python3的错误,直接按照报错信息修改文件就可以了。好不容易编译通过了,开始刷机,这时发现了更大的坑,困扰了我好几个月,因为我刷机使用的是台式电脑,台式电脑的USB口有很多,机箱的前面有USB口,机箱的后面也有USB口,这两者似乎都是USB口,没啥区别,但是正是这种想法让我好几个月都想不通为啥我会刷机失败。我刷机失败的现象是:开始时能进入到设备重启,但是一重启设备就无法被电脑识别了,然后就报错;报错信息如下:
4.解决问题
刚开始的时候我觉得是驱动的问题,所以还去安装了高通的9008驱动,安装完发现还是不行,然后正好我就打开了设备管理器查看为啥设备无法识别的原因,因为每一次我刷机感觉要成功的时候就报设备无法被识别的错误,然后失败,查看后才发现显示的错误信息是无法读取设备的文件描述符
,然后我上网查了一下才发现,主机机箱前面的USB口和后面的USB口是有点不一样的,前面的USB口的供电没有机箱背后的USB口供电强,刷机时当供电不足就会导致刷机失败,所以刷机的时候一定要连接机箱背后的USB口。然后就可以刷机成功了。