0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OpenHarmony鴻蒙編譯環(huán)境搭建 (兼容至4.0-Master和主干分支)

王程 ? 來(lái)源:jf_75796907 ? 作者:jf_75796907 ? 2024-02-23 15:22 ? 次閱讀

預(yù)備工作

安裝虛擬機(jī)工具VMware或者VirtualBox。

新建虛擬機(jī),內(nèi)存16GB及以上,硬盤(pán)100GB及以上。

安裝Ubuntu,推薦使用20.04版本。用戶名不能包含中文。

啟動(dòng)并進(jìn)入U(xiǎn)buntu虛擬機(jī),以下步驟將在Ubuntu虛擬機(jī)中進(jìn)行操作。

一、將Shell環(huán)境修改為bash

sudo dpkg-reconfigure dash

選擇“No”。

wKgZomXYRyiAD7nzAABJaF1wMIA816.png

二、替換Ubuntu軟件源

在“https://mirrors.ustc.edu.cn/repogen/”下載對(duì)應(yīng)版本最新的源。

wKgaomXYRy6AB0n3AABpxvDWlNY935.png

在下載好的文件(sources.list)所在的位置開(kāi)啟一個(gè)終端窗口,執(zhí)行下列命令。

備份原始文件:

sudo cp /etc/apt/sources.list /etc/apt/source.list.bak

替換源:

sudo mv -f sources.list /etc/apt/

更新軟件包索引

sudo apt update

三、安裝必要的庫(kù)和工具

需要分兩步進(jìn)行安裝。注意,這里比較重要,官網(wǎng)文檔用一步進(jìn)行安裝,會(huì)出現(xiàn)問(wèn)題,導(dǎo)致安裝不完整,從而導(dǎo)致后期編譯出現(xiàn)“3000”錯(cuò)誤。

sudo apt-get install binutils binutils-dev git git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev   libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 bc gnutls-bin python3.8 python3-pip ruby genext2fs device-tree-compiler make libffi-dev e2fsprogs pkg-config perl openssl libssl-dev libelf-dev libdwarf-dev u-boot-tools mtd-utils cpio doxygen liblz4-tool openjdk-8-jre gcc g++ texinfo dosfstools mtools default-jre default-jdk libncurses5 apt-utils wget scons python3.8-distutils tar rsync git-core libxml2-dev lib32z-dev grsync xxd libglib2.0-dev libpixman-1-dev kmod jfsutils reiserfsprogs xfsprogs squashfs-tools pcmciautils quota ppp libtinfo-dev libtinfo5 libncurses5-dev libncursesw5 libstdc++6 gcc-arm-none-eabi vim ssh locales libxinerama-dev libxcursor-dev libxrandr-dev libxi-dev
sudo apt-get install gcc-arm-linux-gnueabi gcc-9-arm-linux-gnueabi

四、配置Python

設(shè)置默認(rèn)Python解釋器,python和python3軟鏈接為python3.8:

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8 1
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1
python --version

安裝python包管理工具(pip3):

sudo apt install python3-pip

配置pip軟件包更新源:

mkdir ~/.pip
pip3 config set global.index-url https://mirrors.huaweicloud.com/repository/pypi/simple
pip3 config set global.trusted-host mirrors.huaweicloud.com
pip3 config set global.timeout 120

五、安裝Samba服務(wù)

用于在開(kāi)發(fā)環(huán)境中使用VS Code編寫(xiě)代碼。執(zhí)行下列命令安裝samba并打開(kāi)配置文件:

sudo apt install samba
sudo gedit /etc/samba/smb.conf

在配置文件末尾添加以下內(nèi)容:

[home]
comment = User Homes
path = /home
guest ok = no
writable = yes
browsable = yes
create mask = 0755
directory mask = 0755

建立用戶并設(shè)置密碼(請(qǐng)將下面的用戶名換成您自己的):

sudo smbpasswd -a dragon

重啟samba:

sudo service smbd restart

六、獲取源代碼的必要工具和配置

安裝git-lfs,會(huì)自動(dòng)安裝git:

sudo apt install git-lfs

安裝repo和requests:

wget https://gitee.com/oschina/repo/raw/fork_flow/repo-py3
sudo mv repo-py3 /usr/local/bin/repo
sudo chmod a+x /usr/local/bin/repo
pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests

配置git(請(qǐng)將下面的郵箱和用戶名換成您自己的):

git config --global user.email "dragon@hbu.cn"
git config --global user.name "dragon"
git config --global credential.helper store
git config --global --add safe.directory "*"

七、拉取源碼

以4.0為例(可以拉取branch或tag,這里使用branch):

mkdir -p ~/openharmony/4.0
cd ~/openharmony/4.0
repo init -u https://gitee.com/openharmony/manifest -b OpenHarmony-4.0-Release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'

在源碼根目錄下執(zhí)行prebuilts腳本,安裝編譯器及二進(jìn)制工具:

bash build/prebuilts_download.sh

八、安裝編譯工具

在源碼根目錄運(yùn)行如下命令安裝hb并更新至最新版本:

python3 -m pip install --user build/hb

設(shè)置環(huán)境變量:

echo 'export PATH=~/.local/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

九、編譯

兩種方式,使用hb或者build.sh。

使用hb。在源碼根目錄運(yùn)行如下命令(選擇要編譯的產(chǎn)品并進(jìn)行編譯):

hb set
hb build

使用build.sh。命令格式為:

./build.sh --product-name {product_name} --ccache

例如,在源碼根目錄運(yùn)行如下命令:

./build.sh --product-name rk3568 --ccache

耐心等待,對(duì)于標(biāo)準(zhǔn)系統(tǒng)來(lái)說(shuō),完整編譯過(guò)程會(huì)持續(xù)2-3小時(shí)。

wKgaomXYR0GAAimPAADQ-7oaLKc160.png


為了能讓大家更好的學(xué)習(xí)鴻蒙 (OpenHarmony) 開(kāi)發(fā)技術(shù),這邊特意整理了《鴻蒙 (OpenHarmony)開(kāi)發(fā)學(xué)習(xí)手冊(cè)》,希望對(duì)大家有所幫助:

《鴻蒙(Harmony OS)開(kāi)發(fā)學(xué)習(xí)手冊(cè)》

入門(mén)必看:https://docs.qq.com/doc/DUk51cHZJaUpmSlhH
1.應(yīng)用開(kāi)發(fā)導(dǎo)讀(ArKTS)
2.應(yīng)用開(kāi)發(fā)導(dǎo)讀(Java

wKgaomXW6N2AJp9uAAQXRxEAprs547.png

HarmonyOS概念:https://docs.qq.com/doc/DUk51cHZJaUpmSlhH
1.系統(tǒng)定義
2.技術(shù)框架
3.技術(shù)特性
4.系統(tǒng)安全

wKgaomXW6OSAFcCRAAV2zd2X_1s891.png

快速入門(mén):https://docs.qq.com/doc/DUk51cHZJaUpmSlhH
1.基本概念
2.構(gòu)建第一個(gè)ArkTS應(yīng)用
3.構(gòu)建第一個(gè)JS應(yīng)用
4…

wKgZomXW6PuAA7wEAAKx6By_2Z8377.png

開(kāi)發(fā)基礎(chǔ)知識(shí):https://docs.qq.com/doc/DUk51cHZJaUpmSlhH
1.應(yīng)用基礎(chǔ)知識(shí)
2.配置文件
3.應(yīng)用數(shù)據(jù)管理
4.應(yīng)用安全管理
5.應(yīng)用隱私保護(hù)
6.三方應(yīng)用調(diào)用管控機(jī)制
7.資源分類(lèi)與訪問(wèn)
8.學(xué)習(xí)ArkTS
9…

wKgZomXW6QaAM4niAAQzrXUUPik914.png

基于ArkTS 開(kāi)發(fā):https://docs.qq.com/doc/DUk51cHZJaUpmSlhH
1.Ability開(kāi)發(fā)
2.UI開(kāi)發(fā)
3.公共事件與通知
4.窗口管理
5.媒體
6.安全
7.網(wǎng)絡(luò)與鏈接
8.電話服務(wù)
9.數(shù)據(jù)管理
10.后臺(tái)任務(wù)(Background Task)管理
11.設(shè)備管理
12.設(shè)備使用信息統(tǒng)計(jì)
13.DFX
14.國(guó)際化開(kāi)發(fā)
15.折疊屏系列
16………

wKgZomXW6RKATahiAAKz-zSMnR4040.png


審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 編譯
    +關(guān)注

    關(guān)注

    0

    文章

    659

    瀏覽量

    32878
  • 鴻蒙
    +關(guān)注

    關(guān)注

    57

    文章

    2358

    瀏覽量

    42876
  • OpenHarmony
    +關(guān)注

    關(guān)注

    25

    文章

    3723

    瀏覽量

    16343
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    OpenHarmony源碼編譯后燒錄鏡像教程,RK3566鴻蒙開(kāi)發(fā)板演示

    本文介紹瑞芯微主板/開(kāi)發(fā)板編譯OpenHarmony源碼后燒錄鏡像的教程,觸覺(jué)智能Purple Pi OH鴻蒙開(kāi)發(fā)板演示。搭載了瑞芯微RK3566四核處理器,樹(shù)莓派卡片電腦設(shè)計(jì),支持開(kāi)源鴻蒙
    的頭像 發(fā)表于 12-30 10:08 ?49次閱讀
    <b class='flag-5'>OpenHarmony</b>源碼<b class='flag-5'>編譯</b>后燒錄鏡像教程,RK3566<b class='flag-5'>鴻蒙</b>開(kāi)發(fā)板演示

    鴻蒙Flutter實(shí)戰(zhàn):02-Windows環(huán)境搭建踩坑指南

    環(huán)境搭建 1. 下載Flutter SDK,配置環(huán)境變量 鴻蒙 Flutter SDK 需要在 Gitee 下載。目前建議下載 dev 分支
    發(fā)表于 10-22 15:05

    鴻蒙OpenHarmony南向/北向快速開(kāi)發(fā)教程-迅為RK3568開(kāi)發(fā)板

    源碼 P3_初次編譯OpenHarmony源碼 P4_OpenHarmony鏡像簡(jiǎn)介以及燒寫(xiě)工具配置 P5_優(yōu)化開(kāi)發(fā)流程-搭建windows開(kāi)發(fā)環(huán)境
    發(fā)表于 07-23 10:44

    深耕鴻蒙生態(tài),國(guó)科微旗艦芯片獲“鴻蒙4.0”首款認(rèn)證

    7月9日,國(guó)科微宣布旗下超高清視頻解碼及商顯芯片通過(guò)OpenHarmony4.0版本兼容性測(cè)評(píng),獲頒鴻蒙生態(tài)產(chǎn)品兼容性證書(shū)。其中,國(guó)科微GK6323V100C是業(yè)界首款通過(guò)
    的頭像 發(fā)表于 07-10 13:10 ?479次閱讀
    深耕<b class='flag-5'>鴻蒙</b>生態(tài),國(guó)科微旗艦芯片獲“<b class='flag-5'>鴻蒙</b><b class='flag-5'>4.0</b>”首款認(rèn)證

    鴻蒙開(kāi)發(fā):【OpenHarmony 4.0 Release指導(dǎo)】

    OpenHarmony 4.0版本如期而,開(kāi)發(fā)套件同步升級(jí)到API 10。相比3.2 Release版本,新增4000多個(gè)API,應(yīng)用開(kāi)發(fā)能力更加豐富;HDF新增200多個(gè)HDI接口,硬件適配更加便捷;我們持續(xù)優(yōu)化圖形框架和方
    的頭像 發(fā)表于 05-14 09:59 ?1487次閱讀
    <b class='flag-5'>鴻蒙</b>開(kāi)發(fā):【<b class='flag-5'>OpenHarmony</b> <b class='flag-5'>4.0</b> Release指導(dǎo)】

    鴻蒙OpenHarmony技術(shù):【Docker編譯環(huán)境

    OpenHarmony為開(kāi)發(fā)者提供了兩種Docker環(huán)境,以幫助開(kāi)發(fā)者快速完成復(fù)雜的開(kāi)發(fā)環(huán)境準(zhǔn)備工作。
    的頭像 發(fā)表于 05-11 09:47 ?1479次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>技術(shù):【Docker<b class='flag-5'>編譯</b><b class='flag-5'>環(huán)境</b>】

    【開(kāi)源鴻蒙】下載OpenHarmony 4.1 Release源代碼

    本文介紹了如何下載開(kāi)源鴻蒙OpenHarmony)操作系統(tǒng) 4.1 Release版本的源代碼,該方法同樣可以用于下載OpenHarmony最新開(kāi)發(fā)版本(master
    的頭像 發(fā)表于 04-27 23:16 ?941次閱讀
    【開(kāi)源<b class='flag-5'>鴻蒙</b>】下載<b class='flag-5'>OpenHarmony</b> 4.1 Release源代碼

    鴻蒙OpenHarmony搭建Ubuntu環(huán)境

    支持在Windows環(huán)境下進(jìn)行編譯,如Hi3861、Hi3516系列開(kāi)發(fā)板。因此,建議使用Ubuntu的編譯環(huán)境對(duì)源碼進(jìn)行編譯
    的頭像 發(fā)表于 04-19 16:53 ?1284次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>【<b class='flag-5'>搭建</b>Ubuntu<b class='flag-5'>環(huán)境</b>】

    鴻蒙OpenHarmony搭建Windows環(huán)境

    支持在Windows環(huán)境下進(jìn)行編譯,如Hi3861、Hi3516系列開(kāi)發(fā)板。因此,建議使用Ubuntu的編譯環(huán)境對(duì)源碼進(jìn)行編譯。
    的頭像 發(fā)表于 04-19 15:42 ?608次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>【<b class='flag-5'>搭建</b>Windows<b class='flag-5'>環(huán)境</b>】

    源碼開(kāi)放,開(kāi)發(fā)者手機(jī) buff 疊滿

    OpenHarmony 編譯環(huán)境搭建 官方文檔: https://gitee.com/openharmony/docs/blob/
    發(fā)表于 03-04 14:29

    [鴻蒙]OpenHarmony4.0的Rust開(kāi)發(fā)

    。 OpenHarmony 為了集成 C/C++ 代碼和提升編譯速度,使用了 GN + Ninja 的編譯構(gòu)建系統(tǒng)。GN 的構(gòu)建語(yǔ)言簡(jiǎn)潔易讀,Ninja 的匯編級(jí)編譯規(guī)則直接高效。 為
    的頭像 發(fā)表于 02-26 17:28 ?898次閱讀
    [<b class='flag-5'>鴻蒙</b>]<b class='flag-5'>OpenHarmony4.0</b>的Rust開(kāi)發(fā)

    鴻蒙OpenHarmony 4.0藍(lán)牙代碼結(jié)構(gòu)簡(jiǎn)析

    OpenHarmony 4.0藍(lán)牙代碼結(jié)構(gòu)簡(jiǎn)析前言 OpenHarmony 4.0上藍(lán)牙倉(cāng)和目錄結(jié)構(gòu)進(jìn)行一次較大整改,本文基于4.0以上版本
    的頭像 發(fā)表于 02-26 16:08 ?1577次閱讀
    【<b class='flag-5'>鴻蒙</b>】<b class='flag-5'>OpenHarmony</b> <b class='flag-5'>4.0</b>藍(lán)牙代碼結(jié)構(gòu)簡(jiǎn)析

    淺談兼容 OpenHarmony 的 Flutter

    拓展,可支持使用 Flutter Tools 指令編譯和構(gòu)建 OpenHarmony 應(yīng)用程序。 倉(cāng)庫(kù)的 commit 記錄顯示,OpenHarmony 使用的 Flutter 版本是 3.7 穩(wěn)定
    的頭像 發(fā)表于 02-02 15:22 ?617次閱讀
    淺談<b class='flag-5'>兼容</b> <b class='flag-5'>OpenHarmony</b> 的 Flutter

    鴻蒙OS4.0兼容性測(cè)試

    dcts N N Y ssts N N Y 以上部分是對(duì)兼容性測(cè)評(píng)的常規(guī)介紹。下面我們要講從OpenHarmony3.2Release開(kāi)始,到4.0進(jìn)入設(shè)置應(yīng)用的兼容性證明頁(yè)面,如
    發(fā)表于 01-17 20:38

    鴻蒙開(kāi)發(fā)南向環(huán)境搭建教學(xué)

    南向開(kāi)發(fā)環(huán)境搭建教學(xué),更多鴻蒙開(kāi)發(fā)資料可以前往高清完整版 《鴻蒙開(kāi)發(fā)4.0基礎(chǔ)-高階文檔》找保存。(附
    發(fā)表于 01-05 16:38