OpenHarmony輕量系統(tǒng)開(kāi)發(fā)【2】源碼下載和開(kāi)發(fā)環(huán)境
??想了解更多內(nèi)容,請(qǐng)?jiān)L問(wèn):??
??51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)??
??https://harmonyos.51cto.com??
春節(jié)不停更,此文正在參加「星光計(jì)劃-春節(jié)更帖活動(dòng)」https://harmonyos.51cto.com/posts/9923
摘要:本文簡(jiǎn)單介紹OpenHarmony開(kāi)發(fā)環(huán)境,代碼下載、版本更新日志等。
適合群體:想要上手開(kāi)發(fā)OpenHarmony設(shè)備
2.1源碼下載
關(guān)于源碼下載的,讀者可以直接查看官網(wǎng):
本文這里做下總結(jié):
(1)注冊(cè)碼云gitee賬號(hào)。
(2)注冊(cè)碼云SSH公鑰,具體可以百度
(3)安裝git客戶端和git-lfs并配置用戶信息。
git config --global user.name "yourname"
git config --global user.email "your-email-address"
git config --global credential.helper store
(4)安裝碼云repo工具,可以執(zhí)行如下命令。
curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo
#注意,如果沒(méi)有權(quán)限,可下載至其他目錄,并將其配置到環(huán)境變量中
chmod a+x /usr/local/bin/repo
pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
以下是主干代碼的下載方式,但是主干代碼可能會(huì)不穩(wěn)定,不推薦大家使用,推薦大家使用TLS版本。
OpenHarmony主干代碼獲取
方式一:通過(guò)repo + ssh下載(需注冊(cè)公鑰,請(qǐng)參考碼云幫助中心)。
repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
復(fù)制方式二(個(gè)人推薦這個(gè)):通過(guò)repo + https下載。
repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
2.2 Release版本下載
OpenHarmony 3.x Releases
OpenHarmony Release Notes
目前已經(jīng)到了3.1版本,即將更新3.3版本
2.3開(kāi)發(fā)環(huán)境
OpenHarmony的開(kāi)發(fā)環(huán)境主要分為window、Linux兩個(gè)。
其中window環(huán)境用于編寫代碼、下載程序等。
Linux環(huán)境用于代碼下載、編譯等。
這里推薦大家只使用Linux環(huán)境即可,Linux可以使用Ubuntu 20.04版本。關(guān)于Windows環(huán)境,大家可裝可以不裝,編寫代碼可以使用自己喜歡的IDE、下載的話,不同開(kāi)發(fā)板都會(huì)提供不同的下載工具。
Ubuntu的開(kāi)發(fā)環(huán)境可以參考官網(wǎng):
Ubuntu的開(kāi)發(fā)環(huán)境
本文也會(huì)列出來(lái),但是后面官方可能會(huì)更新,導(dǎo)致本文不一定適用。
需要注意的是,關(guān)于Ubuntu的環(huán)境主要分為兩部分:
(1)OpenHarmony代碼所需的公共部分:這里主要是安裝python、hb等,這些都是必須的。
(2)具體開(kāi)發(fā)板所需的開(kāi)發(fā)環(huán)境:這個(gè)跟具體芯片、開(kāi)發(fā)板相關(guān),例如對(duì)應(yīng)的交叉編譯器、或者制作文件系統(tǒng)相關(guān)的腳本組件等。這些看自己所需的芯片環(huán)境是哪些。
2.3.1 OpenHarmony開(kāi)發(fā)環(huán)境
(1)將Ubuntu Shell環(huán)境修改為bash。
執(zhí)行如下命令,確認(rèn)輸出結(jié)果為bash。如果輸出結(jié)果不是bash,請(qǐng)根據(jù)步驟2,將Ubuntu shell修改為bash。
ls -l /bin/sh
復(fù)制
(2)打開(kāi)終端工具,執(zhí)行如下命令,然后選擇No,將Ubuntu shell由dash修改為bash。
sudo dpkg-reconfigure dash
(3)使用如下apt-get命令安裝編譯所需的必要的庫(kù)和工具
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
(4)安裝hb
在源碼根目錄下載運(yùn)行如下命令安裝hb
python3 -m pip install build/lite
設(shè)置環(huán)境變量
vim ~/.bashrc
將以下命令拷貝到.bashrc文件的最后一行,保存并退出。
export PATH=~/.local/bin:$PATH
執(zhí)行如下命令更新環(huán)境變量。
source ~/.bashrc
執(zhí)行"hb -h",界面打印以下信息即表示安裝成功:
usage: hb
OHOS build system
positional arguments:
{build,set,env,clean}
build Build source code
set OHOS build settings
env Show OHOS build env
clean Clean output
optional arguments:
-h, --help show this help message and exit
2.3.2 Hi3861開(kāi)發(fā)環(huán)境
最好參考官方文檔:
Hi3861開(kāi)發(fā)環(huán)境
這里做下記錄
(1)安裝編譯依賴基礎(chǔ)軟件(僅Ubuntu 20+需要)
執(zhí)行以下命令進(jìn)行安裝:
sudo apt-get install build-essential gcc g++ make zlib* libffi-dev
(2)安裝Scons
運(yùn)行如下命令,安裝SCons安裝包。
python3 -m pip install scons
運(yùn)行如下命令,查看是否安裝成功。如果安裝成功,查詢結(jié)果下圖所示。
scons -v
圖 1 SCons安裝成功界面,版本要求3.0.4以上
(3)安裝python模塊
運(yùn)行如下命令,安裝python模塊setuptools。
pip3 install setuptools
(4)安裝GUI menuconfig工具(Kconfiglib),建議安裝Kconfiglib 13.2.0+版本,任選如下一種方式。
命令行方式:
sudo pip3 install kconfiglib
(5)安裝pycryptodome,任選如下一種方式。
安裝升級(jí)文件簽名依賴的Python組件包,包括:pycryptodome、six、ecdsa。安裝ecdsa依賴six,請(qǐng)先安裝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模組類編譯工具鏈)
下載以下交叉編譯工具鏈:
交叉編譯工具鏈下載
請(qǐng)先執(zhí)行以下命令將壓縮包解壓到根目錄:
tar -xvf gcc_riscv32-linux-7.3.0.tar.gz -C ~
vim ~/.bashrc
將以下命令拷貝到.bashrc文件的最后一行,保存并退出。
export PATH=~/gcc_riscv32/bin:$PATH
生效環(huán)境變量。
source ~/.bashrc
Shell命令行中輸入如下命令,如果能正確顯示編譯器版本號(hào),表明編譯器安裝成功。
riscv32-unknown-elf-gcc -v
??想了解更多內(nèi)容,請(qǐng)?jiān)L問(wèn):??
??51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)??
??https://harmonyos.51cto.com??