3243|3

2549

帖子

0

TA的资源

五彩晶圆(初级)

楼主
 

【小熊派BearPi-HM Micro】二:从零搭建OpenHarmony编译环境 [复制链接]

本帖最后由 数码小叶 于 2022-3-26 15:36 编辑

        对于OpenHarmony的编译环境,可以选择简单的方式,就是直接使用小熊派提供的系统镜像,但是抱着学习的心态,还是从零开始,因此,之前的虚拟机也没使用,重新来个新的虚拟机。在ubuntu18和20之间纠结了一下,最后还是选择了熟悉的18。纠结的原因就是因为看到了环境要求里有一条,python的版本3.7以上。而ubuntu 18低于这个版本。

       对于国内的使用环境,安装完ubuntu后的第一件事就是换源了,那就得编辑sources.list 文件,然后前提自然是安装个vim了,这个比较快速的解决了

sudo vim /etc/apt/sources.list
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse

 

然后是升级python,这个花了很长时间才彻底搞定,一直各种奇葩错误,各种装了卸、卸了装

async = reply_handler and error_handler:
^
SyntaxError: invalid syntax

 

ModuleNotFoundError: No module named 'apt_pkg'

 

cannot import name '_gi'

 

本来以为是缺模块,然而实际是你安装不完的无底洞,才发现不是表面的意思,各种折腾,最后解决了

$ sudo apt update
$ sudo apt install software-properties-common
$ sudo add-apt-repository ppa:deadsnakes/ppa
$ sudo apt install python3.9

deadsnakes由第三方维护的PPA软件源,可以方便的来安装所需要的Python版本,其紧随Python官方进行更新

 

中间在切换python版本上也花费了很多时间,导致ubuntu的更新以及语言支持,还有一些组件都无法打开,因为默认的依赖版本依旧是python3.6

 

 

还需要复制几个文件

sudo cp _gi.cpython-36m-x86_64-linux-gnu.so _gi.cpython-39m-x86_64-linux-gnu.so
sudo cp _gi_cairo.cpython-36m-x86_64-linux-gnu.so _gi_cairo.cpython-39m-x86_64-linux-gnu.so
sudo cp apt_pkg.cpython-36m-x86_64-linux-gnu.so  apt_pkg.cpython-39m-x86_64-linux-gnu.so

 

 

再安装编译安装编译所需的必要的库和工具

sudo apt-get install build-essential gcc g++ make zlib* libffi-dev e2fsprogs pkg-config flex bison perl bc openssl libssl-dev libelf-dev libc6-dev-amd64 binutils binutils-dev libdwarf-dev u-boot-tools mtd-utils gcc-arm-linux-gnueabi cpio device-tree-compiler net-tools openssh-server git vim openjdk-11-jre-headless

 

安装hb,hb是Openharmony的编译构建命令行工具,就是这个hb需要高版本的python支持,然而依旧是安装不顺利

 

最后找到一个办法,可以到源码里安装,那就下载源码

 

 

 

 

还少一个mkimage.stm32工具,从windows下复制过去,修改权限

 

这样就可以编译源码了

 

但是报错了,提示找不到mkimage.stm32工具

 

奇怪的是实际输入指令是可以运行的

 

各种找原因,最后发现根源出在shell上,把shell换成bash,解决

这一点还是第一次知道,然后科普了一下,发现官方介绍它俩的差距,有好几页。。。不过简单概括就是,bash是增强版的shell

 

编译源码成功,虽然从头搭建环境,花了很多时间,不过中间对Openharmony的了解也就更深了。

此帖出自Linux开发论坛

最新回复

还没用过21的,一直用的20的。   详情 回复 发表于 2022-3-29 13:02
点赞 关注

回复
举报

7244

帖子

2

TA的资源

版主

沙发
 

系统自带的Python确实不好升级,容易出各种报错。

此帖出自Linux开发论坛

点评

据说21版的升到3.9了,不知道是不是  详情 回复 发表于 2022-3-28 22:25
 
 

回复

2549

帖子

0

TA的资源

五彩晶圆(初级)

板凳
 
wangerxian 发表于 2022-3-28 14:15 系统自带的Python确实不好升级,容易出各种报错。

据说21版的升到3.9了,不知道是不是

此帖出自Linux开发论坛

点评

还没用过21的,一直用的20的。  详情 回复 发表于 2022-3-29 13:02
 
 
 

回复

7244

帖子

2

TA的资源

版主

4
 
数码小叶 发表于 2022-3-28 22:25 据说21版的升到3.9了,不知道是不是

还没用过21的,一直用的20的。

此帖出自Linux开发论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表