`
《鸿蒙设备学习菜鸟指南》之【六、搭建编译环境】
[目录索引]
六、搭建编译环境
我们同样首先使用最简化的方案,先入门,然后再配置复杂的方案,循序渐进。
最简化方案:
• Windows系统:
– Docker无忧包:编译环境已配好,安装后就可以使用啦
• MacOS系统:
– Docker无忧包:编译环境已配好,安装后就可以使用啦
• Linux系统:
– Docker无忧包:编译环境已配好,安装后就可以使用啦,不影响系统自身环境
是的,Docker方案,就是这么简单,不用怀疑了
• Docker无忧包安装方法:
首先,下载 https://bbs.elecfans.com/jishu19995511_1.html 中的scrip.zip工具包,并解压备用。
然后,我们打开VsCode,依次菜单操作:查看(View) -> 终端(Terminal),然后进入底部的终端窗口,进行操作:
- – Windows:示例代码目录 D:OHOScode
首先安装Docker:
– Windows10: 下载
– Windows7:下载
安装完成Docker并点击Docker图标[img=24,33]blob:https://bbs.elecfans.com/2afad581-2327-4a3f-af61-5252ce7008e7[/img]启动后,等待一小会Docker启动完成,依次执行下面的命令:
#说明:以下在VsCode终端窗口执行,或者命令行黑窗口中执行:
D:
mkdir OHOScode
cd OHOS
#说明:将之前下载的scrip.zip解压后的目录buildtools,放到OHOScode目录中,并确保下面的命令
dir OHOScodeuildtools
#输出:checkEnv.sh和setupEnv.sh
#说明:启动docker编译环境
docker run -it --name hm_build -v "D:/OHOS/code:/mnt" walker2048/hm_build:slim_iot
#说明:Docker启动后,会进入Linux环境`In Docker@/mnt #`,在docker编译环境中,继续执行:
chmod a+x /mnt/buildtools/*.sh
apt install -y rsync patch wget nano
setupEnv
setupEnv
- – MacOS:示例代码目录 ~/OHOS/code
首先安装Docker:下载
安装完成后,点击Docker图标[img=16,13]blob:https://bbs.elecfans.com/0b1c75e0-0646-4376-8c9e-8a09735fb496[/img]启动,待任务栏的Docker图标不再闪动,然后执行下面的命令:
#说明:以下在VsCode终端窗口执行,或者Terminal中执行:
mkdir -p /OHOS/code
#说明:将之前下载的scrip.zip,拷贝到OHOS/目录中
cd /OHOS
unzip script.zip
chmod a+x code/buildtools/*.sh
#说明:启动docker编译环境
docker run -it --name hm_build -v "$(pwd)/code:/mnt" walker2048/hm_build:slim_iot
#说明:Docker启动后,会进入Linux环境`In Docker@/mnt #`,在docker编译环境中,继续执行:
apt install -y rsync patch wget nano make
setupEnv
mkdir -p /OHOS/code-1.0
rsync -avP --exclude buildtools /mnt/* /OHOS/code-1.0
checkEnv
- – Linux:示例代码目录 ~/OHOS/code
先安装Docker并启动,然后执行如下命令:
- • Ubuntu 20.04 LTS / 18.04 LTS:
#说明:以下在VsCode终端窗口执行,或者Terminal中执行:
mkdir -p ~/OHOS/code
#说明:将之前下载的scrip.zip,拷贝到OHOS/目录中
cd ~/OHOS
unzip script.zip
chmod a+x code/buildtools/*.sh
#Ubuntu20.04/18.04 LTS的Docker安装方法:https://m.yisu.com/zixun/147857.html
#说明:启动docker编译环境
docker run -it --name hm_build -v "$(pwd)/code:/mnt" walker2048/hm_build:slim_iot
#说明:Docker启动后,会进入Linux环境`In Docker@/mnt #`,在docker编译环境中,继续执行:
apt install -y rsync patch wget nano make
setupEnv
checkEnv
- • CentOS:安装docker后,其他请参考Ubuntu
安装后,最后提示信息如下,即表示安装成功,可以进行到下一步了。
[img=373,215]blob:https://bbs.elecfans.com/7900f99c-cc83-46d5-83e3-e66d33b1fb52[/img]
此时,我们一般进行一次基础编译,确保编译环境做好了准备。
在In Docker@ #提示符下执行如下编译命令:
#说明:Docker启动后,会进入Linux环境`In Docker@/mnt #`,在docker编译环境中,继续执行:
#MacOS环境:
cd /OHOS/code-1.0
python build.py wifiiot
rsync -avP out /mnt/
#Windows和Linux环境
cd /mnt/
python build.py wifiiot
如果不在In Docker@提示符下面,则需要再次执行以上的docker命令:
#说明:以下在VsCode终端窗口执行,或者Terminal或者命令行黑窗口中执行:
#说明:启动docker编译环境
docker start hm_build
docker exec -it hm_build /bin/bash
#说明:进入Docker环境后后,会进入Linux环境`In Docker@ #`,在docker编译环境中,继续执行上面的指令
如果你看到如下提示信息,恭喜你,编译成功:
[img=420,151]blob:https://bbs.elecfans.com/2c36b4f5-e001-4754-b296-7a9da5e4f7fe[/img]
现在,code目录下的out目录中,已经出现了我们第一次编译完成的结果:
[img=420,533]blob:https://bbs.elecfans.com/6ae5846c-1e49-45a5-8b72-316be85aa2a3[/img]
现在基础编译环境已经搭建好了,我们可以继续我们的下一段旅程了。
需要注意的是,如果你的板子是AIC或者IPC,则还要两个包需要安装:LLVM和hc-gen。
#说明:进入Docker环境后后,会进入Linux环境`In Docker@ #`,在docker编译环境中,继续执行下面的指令
#Mac系统已做好设置,下面命令跳过;
#Windows和Linux系统需要执行:
cd /mnt/buildtools
wget -c https://repo.huaweicloud.com/har ... nux-9.0.0-34042.tar
wget -c https://repo.huaweicloud.com/har ... -gen-0.65-linux.tar
tar xvf llvm-linux-9.0.0-34042.tar -C /mnt/buildtools/
tar xvf hc-gen-0.65-linux.tar -C /mnt/buildtools/
#安装编译需要的工具
apt install -y dosfstools mtools mtd-utils zip
apt install -y gcc g++ make zlib* libffi-dev
#添加环境变量,打开bash配置,并在最后添加
# nano ~/.bashrc
export PATH=/mnt/buildtools/llvm/bin:$PATH
export PATH=/mnt/buildtools/hc-gen:$PATH
#编辑完成,按Ctrl+X,再选择Y或者N,表示保存或者不保存
#使扩展编译包生效
In Docker@ # source ~/.bashrc
#检查
In Docker@ # hc-gen -v
#输出:Hcs compiler v0.65
In Docker@ # clang -v
#输出:clang version 9.0.0
其他方案:
• Windows系统:
– 方案1:Docker配置方案,安装后,跟着指南一步一步安装所需要的软件即可,包好用
– 方案2:虚拟机Linux
– 方案3:WSL,Win10自带Linux子系统
– 方案4:云主机或真机Linux,参考虚拟机Linux
– 方案5:cygwin或者msys(难度较大)
• MacOS系统:
– Docker配置方案,安装后,跟着指南一步一步安装所需要的软件即可,包好用
– 虚拟机Linux
• Linux系统:
– 系统自身
– Docker配置方案(不改变系统现有环境),安装后,跟着指南一步一步安装所需要的软件即可,包好用
`[attach]970986[/attach][attach]970978[/attach][attach]970982[/attach][attach]970983[/attach]