編譯
OpenHarmony支持hb和build.sh兩種編譯方式。此處介紹hb方式,build.sh腳本編譯方式請(qǐng)參考[使用build.sh腳本編譯源碼]。
使用build.sh腳本編譯源碼
- 進(jìn)入源碼根目錄,執(zhí)行如下命令進(jìn)行版本編譯。
./build.sh --product-name name --ccache
說明: _name_為產(chǎn)品名稱,例如Hi3516DV300、rk3568等。
檢查編譯結(jié)果。編譯完成后,log中顯示如下:
post_process =====build name successful.
編譯所生成的文件都?xì)w檔在out/{device_name}/目錄下,結(jié)果鏡像輸出在out/{device_name}/packages/phone/images/ 目錄下。
說明: 其他模塊化編譯操作,可參見[編譯構(gòu)建指南]
想要詳細(xì)了解OpenHarmony編譯構(gòu)建模塊功能的開發(fā)者可參考[編譯構(gòu)建指南]
前提條件
- 已正確[安裝庫和工具集]。
- 已正確[安裝編譯工具]。
- 已正確[安裝Hi3861特有工具])。
- “Hello World”程序已編寫完成。
- 可正常登錄Ubuntu環(huán)境。
操作步驟
鴻蒙開發(fā)指導(dǎo)文檔:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
在Ubuntu環(huán)境下進(jìn)入源碼根目錄,執(zhí)行如下命令進(jìn)行編譯:
- 設(shè)置編譯路徑。
hb set
- 選擇當(dāng)前路徑。
.
- 在hisilicon下選擇wifiiot_hispark_pegasus并回車。
說明:
同樣的開發(fā)板在適配不同的場(chǎng)景時(shí),要采用的編譯形態(tài)不同(即此處要選擇的product不同),請(qǐng)參考[編譯形態(tài)整體說明]。
編譯形態(tài)整體說明
在編譯過程中,需要根據(jù)實(shí)際需求選擇不同的編譯形態(tài)。單擊下表中的鏈接可獲取具體產(chǎn)品配置,從而了解其中差異。
表1 編譯構(gòu)建支持的產(chǎn)品列表
編譯形態(tài) | 開發(fā)板 | 主芯片 | 內(nèi)核 | 系統(tǒng)類型 |
---|---|---|---|---|
[neptune100] | neptune100 | winnermicro | liteos_m | mini |
[rk3568] | rk3568 | rockchip | linux | standard |
[rk3568_mini_system] | rk3568 | rockchip | linux | standard |
[bearpi_hm_micro] | bearpi_hm_micro | stm32mp1xx | liteos_a | small |
[bearpi_hm_nano]nfig.json) | bearpi_hm_nano | hi3861v100 | liteos_m | mini |
[wifiiot_hispark_pegasus] | hispark_pegasus | hi3861v100 | liteos_m | mini |
[ipcamera_hispark_aries] | hispark_aries | hi3518ev300 | liteos_a | small |
[ipcamera_hispark_taurus] | hispark_taurus | hi3516dv300 | liteos_a | small |
[ipcamera_hispark_taurus_linux] | hispark_taurus | hi3516dv300 | linux | small |
[hispark_taurus_standard] | hispark_taurus | hi3516dv300 | linux | standard |
[watchos] | hispark_taurus | hi3516dv300 | linux | standard |
[hispark_phoenix] | hispark_phoenix | hi3751v350 | linux | standard |
[hispark_taurus_mini_system] | hispark_taurus | hi3516dv300 | liteos_a | mini |
[hispark_pegasus_mini_system] | hispark_pegasus | hi3861v100 | liteos_m | mini |
[gr5515_sk_iotlink_demo] | gr5515_sk | gr551x | liteos_m | mini |
[gr5515_sk_xts_demo] | gr5515_sk | gr551x | liteos_m | mini |
[wifi_demo] | dev_wifi_a | asr582x | liteos_m | mini |
[xts_demo] | dev_wifi_a | asr582x | liteos_m | mini |
[display_demo] | v200zr | bes2600 | liteos_m | mini |
[xts_demo] | v200zr | bes2600 | liteos_m | mini |
[iotlink_demo] | v200zr | bes2600 | liteos_m | mini |
[mini_distributed_music_player] | v200zr | bes2600 | liteos_m | mini |
[niobe407] | niobe407 | stm32f4xx | liteos_m | mini |
[qemu_mini_system_demo] | arm_mps2_an386 | qemu | liteos_m | mini |
[qemu_csky_mini_system_demo] | SmartL_E802 | qemu | liteos_m | mini |
[qemu_cm55_mini_system_demo] | arm_mps3_an547 | qemu | liteos_m | mini |
[qemu_xtensa_mini_system_demo] | esp32 | qemu | liteos_m | mini |
[qemu_riscv_mini_system_demo] | ricsv32_virt | qemu | liteos_m | mini |
[qemu_ca7_mini_system_demo] | arm_virt | qemu | liteos_a | small |
[qemu_small_system_demo] | arm_virt | qemu | liteos_a | small |
[qemu_arm_linux_min] | qemu-arm-linux | qemu | linux | standard |
[qemu_arm_linux_headless] | qemu-arm-linux | qemu | linux | standard |
[iotlink_demo] | cst85_wblink | chipsea | liteos_m | mini |
[dsoftbus_demo] | cst85_wblink | chipsea | liteos_m | mini |
[xts_demo] | cst85_wblink | chipsea | liteos_m | mini |
圖1 Hi3861編譯設(shè)置圖例
HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿
- 執(zhí)行編譯。
說明:
- 單獨(dú)編譯一個(gè)部件(例如hello),可使用“hb build -T 目標(biāo)名稱 ”進(jìn)行編譯。
- 增量編譯整個(gè)產(chǎn)品,可使用“hb build”進(jìn)行編譯。
- 完整編譯整個(gè)產(chǎn)品,可使用“hb build -f”進(jìn)行編譯。
此處以完整編譯整個(gè)產(chǎn)品為例進(jìn)行說明。
hb build -f
- 編譯結(jié)束后,出現(xiàn)“build success”字樣,則證明構(gòu)建成功。
須知: 編譯結(jié)果文件及編譯日志獲取路徑:out/hispark_pegasus/wifiiot_hispark_pegasus。
審核編輯 黃宇
-
開發(fā)板
+關(guān)注
關(guān)注
25文章
4895瀏覽量
97056 -
編譯
+關(guān)注
關(guān)注
0文章
648瀏覽量
32774 -
鴻蒙
+關(guān)注
關(guān)注
57文章
2302瀏覽量
42689 -
Hi3861
+關(guān)注
關(guān)注
1文章
59瀏覽量
6433 -
OpenHarmony
+關(guān)注
關(guān)注
25文章
3635瀏覽量
16061
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論