#打卡不停更#OpenHarmony环境安装(docker) 原创
OpenHarmony环境安装(docker)
安装wsl
必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11。
我们可以在电脑的关于这儿,查看设备的规格,或者选择 Windows 徽标键 + R,然后键入“winver”,选择“确定”
步骤 1 - 启用适用于 Linux 的 Windows 子系统
需要先启用“适用于 Linux 的 Windows 子系统”可选功能,然后才能在 Windows 上安装 Linux 分发。
以管理员身份打开 PowerShell(“开始”菜单 >“PowerShell” >单击右键 >“以管理员身份运行”),然后输入以下命令:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
步骤二,更新到 WSL 2
若要更新到 WSL 2,需要运行 Windows 10。
- 对于 x64 系统:版本 1903 或更高版本,内部版本为 18362 或更高版本。,我的大家也看到了,是满足条件的。
- 对于 ARM64 系统:版本 2004 或更高版本,内部版本为 19041 或更高版本。
或 Windows 11。
满足则继续运行下面的命令。
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
注意:操作完之后然后将电脑重启
电脑重启完成之后进行后续步骤
下载内核更新包并安装
wsl_update_x64.msi下载网址:
https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
双击安装,下一步下一步就行,安装比较简单,这里不赘述.
将wsl2设置为默认版本
按1)的方式打开PoweShell终端,输入如下指令:
wsl --set-default-version 2
这个时候我们可以继续后面的操作
应用商店获取unbutu
这两个都可以
docker 安装
选择适合自己的,安装很简单,一路next就可以
docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0
装好docker之后还需要设置wsl2运行时的内存,在你的个人用户文件夹下创建.wslconfig文件(注意前面的.),用文本编辑器(比如记事本)打开,填入以下内容(使用英文输入法):
下载官方docker镜像
打开CMD命令行或者PowerShell终端,使用指令下载docker官方镜像:
docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0
等待下载完成之后,使用docker images可以查看到已下载的docker镜像
此时镜像名称太长不方便使用,可以使用重命名操作对镜像重命名:
docker image tag swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0 openharmony-docker:1.0.0
此时使用docker images再次查看镜像,发现多出一个名为openharmony-docker:1.0.0的镜像
可以执行
docker rmi swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0
删除旧的镜像:
执行下面的命令可以运行镜像
docker run -it openharmony-docker:1.0.0
docker images 查看镜像
可以看到系统直接进入到了/home/openharmony,但是此时仅是容器运行成功了,还没有代码,无法完成开发,接下来需要获取代码.
我们执行完一次run指令之后,就不用每次都执行docker run来运行容器,使用下面的方法重新进入容器 (注意区分docker镜像和容器的概念)
sudo docker ps -a 指令(此指令可以运行多次)可以查看当前的docker容器:
这是一个列表,第一行是一个表头,第一列代表容器id,中间有一项是容器的状态(停止或运行),最后一项是容器名称,当构建镜像的时候没有制定名称的话将会由docker自动分配一个随机的名称
iii) 查看完容器之后如果容器处于Exit状态,我们就可以使用
sudo docker start 85bc405aa366 指令启动,其中85bc405aa366 是容器id
iv) 查看完容器之后如果容器处于Up状态,我们就可以使用
sudo docker attach 85bc405aa366 指令连接,其中85bc405aa366 是容器id
连接容器之后,我们就可以进入容器里面操作指令了
注意:如果使用attach方式连接容器之后输入指令发现容器没反应,此时可以按Ctrl+C将容器结束,然后使用sudo docker exec -it 85bc405aa366 /bin/bash 指令进入容器,其中85bc405aa366 是容器id,如下图所示:
一. OpenHarmony代码获取
OpenHarmony官方代码托管在gitee网站,gitee是远程代码托管平台,使用git的方式管理代码,在使用当前教程之前,应当安装git
安装
apt-get install -y git
注册gitee账号,添加ssh公钥.
生成key
ssh-keygen -t rsa -C "852851198@qq.com"
然后三次回车即可生成 ssh key,
查看你的 public key,
cat ~/.ssh/id_rsa.pub
# ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6eNtGpNGwstc....
添加后,在终端(Terminal)中输入
ssh -T git@gitee.com
若返回
Welcome to Gitee.com, yourname!
则证明添加成功。
安装git
sudo apt-get install git
sudo apt-get install git-lfs
配置
git config --global user.name "徐建国"
git config --global user.email "852851198@qq.com"
git config --global credential.helper store
git config --global --list
当前使用官方的master代码,首先下载和安装repo(当前虚拟机已安装,此步跳过)
使用
repo init -u git@gitee.com:openharmony/manifest.git -b master -g ohos:mini
repo init -u git@gitee.com:openharmony/manifest.git -b master **-g ohos:mini****初始化repo仓库:
之后再使用repo sync -c将代码同步过来:
最后使用repo forall -c ‘git lfs pull’ 将一些二进制文件下载过来
至此完成openharmony系统代码的拉取
执行hb -v指令可以显示hb的版本:
运行
docker容器的导出
使用 docker export 命令根据容器 ID 将镜像导出成一个文件。
docker export f299f501774c > OpenHarmony-xxx.tar
docker镜像导入:
使用 docker import 命令则可将这个镜像文件导入进来。
docker import OpenHarmony-xxx.tar my_openharmony:v1
import是导入镜像的意思
OpenHarmony-xxx.tar 是需要导入的镜像,
my_openharmony:v1: my_openharmony是镜像名称,v1是TAG
导入之后运行
docker run -it my_openharmony:v1 /bin/bash
运行的几种
docker pas
root@7048246e0afd:/#
根目录
ls -la
cd
cd 跳home目录
cd - 跳转上一个目录
ls
安装docker
安装remote containe
(8条消息) Docker容器使用MobaXterm连接_wooyang2018的博客-CSDN博客_mobaxterm 连接docker
Hi3861开发环境
最好参考官方文档:
Hi3861开发环境
这里做下记录
(1)安装编译依赖基础软件(仅Ubuntu 20+需要)
执行以下命令进行安装:
sudo apt-get install build-essential gcc g++ make zlib* libffi-dev
(2)安装Scons
运行如下命令,安装SCons安装包。
python3 -m pip install scons
运行如下命令,查看是否安装成功。如果安装成功,查询结果下图所示。
scons -v
图 1 SCons安装成功界面,版本要求3.0.4以上
(3)安装python模块
运行如下命令,安装python模块setuptools。
pip3 install setuptools
(4)安装GUI menuconfig工具(Kconfiglib),建议安装Kconfiglib 13.2.0+版本,任选如下一种方式。
命令行方式:
sudo pip3 install kconfiglib
(5)安装pycryptodome,任选如下一种方式。
安装升级文件签名依赖的Python组件包,包括:pycryptodome、six、ecdsa。安装ecdsa依赖six,请先安装six,再安装ecdsa。
命令行方式:
sudo pip3 install pycryptodome
(6)安装six,任选如下一种方式。
命令行方式:
sudo pip3 install six --upgrade --ignore-installed six
(7)安装ecdsa,任选如下一种方式。
命令行方式:
sudo pip3 install ecdsa
(8)安装gcc_riscv32(WLAN模组类编译工具链)
下载以下交叉编译工具链:
交叉编译工具链下载
安装samba
sudo apt-get update
sudo apt-get install samba
sudo apt-get install samba-common
修改 samba 配置文件
sudo vim /etc/samba/smb.conf
在最后加入如下内容:
[work]
comment = samba home directory
path = /home
public = yes
browseable = yes
public = yes
writeable = yes
read only = no
valid users = hihope #用户名和你的主机一致
create mask = 0777
directory mask = 0777
#force user = nobody
#force group = nogroup
available = yes
用tab键
保存退出后,输入如下命令,设置 samba,建议 123456 即可
sudo smbpasswd -a hihope
重启 samba 服务
sudo service smbd restart
输入用户名以及密,码登录
进入到openharmony,创建tools文件夹
压缩包复制进来
请先执行以下命令将压缩包解压到根目录:
tar -xvf gcc_riscv32-linux-7.3.0.tar.gz -C ~
vim ~/.bashrc
将以下命令拷贝到.bashrc文件的最后一行,保存并退出。
export PATH=~/gcc_riscv32/bin:$PATH
生效环境变量。
source ~/.bashrc
Shell命令行中输入如下命令,如果能正确显示编译器版本号,表明编译器安装成功。
riscv32-unknown-elf-gcc -v
源码目录 下载完代码后,大家可以进入代码目录
hb set
这里我们选择 wifiiot_hispark_pegasus
之后输入:
hb build -f
开始编译
编译后的固件
ls out/hispark_pegasus/wifiiot_hispark_pegasus/