OpenHarmony搭建編譯環(huán)境—VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置
前言
本文詳細介紹了使用VMware虛擬機安裝Ubuntu的過程以及配置編譯環(huán)境的步驟,如有不足之處,歡迎指正。
1、VMware虛擬機安裝
VMware虛擬機分為Player和Pro兩個版本,主要區(qū)別是Player版本用于非商業(yè)用途。如果對快照,虛擬網(wǎng)絡(luò)自定義,創(chuàng)建克隆有需求,可以安裝Pro版本。個人學習建議使用Player版本即可,本文介紹的是Player版本。
官網(wǎng):https://www.vmware.com/cn/products/workstation-player.html。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
選擇16.0版本,之后點擊download
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
推薦16.2.3版本,之后選擇Windows點擊download,下載時間較長耐心等待
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
2、VMware安裝Ubuntu
(1)安裝Ubuntu20.04ISO映像文件
官網(wǎng):https://ubuntu.com/download/desktop官網(wǎng)初始界面通常為最新版本,但這里推薦20.04版本,所以需要找到舊版本的位置.
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
下滑點擊 see our alternative downloads。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
進入Alternative downloads界面。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
下滑點擊Past releases。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
點擊Ubuntu 20.04.6 LTS。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
下滑找到 ubuntu-20.04.6-desktop-amd64.iso,點擊下載,一定要注意是desktop!耐心等待下載。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
(2)VMware開始安裝Ubuntu
下載完成VMware后,雙擊打開VMware,點擊創(chuàng)建新虛擬機.
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
選擇稍后安裝操作系統(tǒng)。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
選擇操作系統(tǒng)。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
選擇系統(tǒng)存儲位置,最好不要堆到C盤。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
最大磁盤大小按需求自定義,選擇存儲為單個文件。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
點擊自定義硬件。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
點擊新CD/DVD,選擇使用ISO映像文件,點擊瀏覽,選擇你下載的Ubuntu20.04ISO映像文件路徑,點擊關(guān)閉,完成。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
選中,點擊播放虛擬機。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
耐心等待…
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
進入Ubuntu之后,下拉選擇中文簡體,再點擊Ubuntu安裝。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
雙擊Chinese。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
來到安裝界面,由于Ubuntu系統(tǒng)顯示器大小不對,導致右下角繼續(xù)按鈕無法顯示,所以我們先關(guān)掉安裝界面,退出安裝。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
點擊退出,耐心等待。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
點擊右上角的倒三角,點擊設(shè)置。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
下拉找到顯示器,點擊分辨率,修改例如1024x768,再點擊應(yīng)用。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
選擇保留更改。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
點擊左上角圖標,重新進入系統(tǒng)安裝,點擊繼續(xù)。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
再點擊繼續(xù)。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
點擊現(xiàn)在安裝。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
再點擊繼續(xù)。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
時區(qū)選擇shanghai即可,點擊繼續(xù)。
登錄信息自行填寫,點擊繼續(xù)。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
進入安裝等待界面。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
下載文件時間較長,也可點擊skip,耐心等待…
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
下載完成后,點擊現(xiàn)在重啟,耐心等待重啟…
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
完成安裝之前會進入一個只有Ubuntu圖案的界面,并有一小段英文提示,按下鍵盤enter鍵即可繼續(xù)安裝。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
根據(jù)提示,進入系統(tǒng),顯示如下界面,即安裝完成。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
3、配置編譯環(huán)境
(1)替換Ubuntu軟件源
下載對應(yīng)版本最新的源
啟動虛擬機,打開FireFox瀏覽器。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
輸入網(wǎng)址:https://mirrors.ustc.edu.cn/repogen/ 下滑找到Ubuntu,版本選擇20.04,點擊download。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
點擊保存文件,接下來點擊下載文件所處位置。
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
備份原始文件
PS:從這邊開始要在終端使用指令,為了便捷通常使用ctrl+CV,但在Ubuntu終端ctrl+V可能不可行,所以要在終端右擊鼠標手動選擇粘貼
打開后,點擊鼠標右鍵,選擇在終端打開,輸入指令,開始備份.
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
【OpenHarmony搭建編譯環(huán)境】VMware虛擬機安裝Ubuntu20.04以及環(huán)境配置-開源基礎(chǔ)軟件社區(qū)
sudo cp /etc/apt/sources.list /etc/apt/source.list.bak
替換源
sudo mv -f sources.list /etc/apt/
更新軟件包索引
sudo apt update
(2)安裝必要的庫和工具
sudo apt-get install build-essential gcc g++ make zlib* libffi-dev
sudo apt-get install 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
(3)配置Python
設(shè)置默認Python解釋器
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包管理工具
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
(4)安裝LLVM(僅OpenHarmony1.X)
下載
wget https://repo.huaweicloud.com/harmonyos/compiler/clang/9.0.0-36191/linux/llvm-linux-9.0.0-36191.tar
安裝
tar -xvf llvm-linux-9.0.0-36191.tar -C ~/
刪除安裝包
rm llvm-linux-9.0.0-36191.tar
添加到PATH
echo 'export PATH=~/llvm/bin:$PATH' | tee -a ~/.bashrc
(5)安裝hb
ps:目前版本hb安裝,需要在源碼的根目錄下去執(zhí)行相關(guān)指令,所以推遲到源碼下載之后再進行操作
安裝
在源碼根目錄下執(zhí)行:
python3 -m pip install --user build/lite
將 pip 包 bin 文件所在目錄添加到 PATH
echo 'export PATH=~/.local/bin:$PATH' | tee -a ~/.bashrc
生效環(huán)境變量
source ~/.bashrc
檢查是否安裝成功
hb -h
(6)安裝gn
建立目錄
mkdir -p ~/openharmony/1.1.3/prebuilts/build-tools/linux-x86/bin/
下載
wget https://repo.huaweicloud.com/harmonyos/compiler/gn/1717/linux/gn-linux-x86-1717.tar.gz
安裝
tar -xvf gn-linux-x86-1717.tar.gz -C ~/openharmony/1.1.3/prebuilts/build-tools/linux-x86/bin/
刪除安裝包
rm gn-linux-x86-1717.tar.gz
(7)安裝ninja
下載
wget https://repo.huaweicloud.com/harmonyos/compiler/ninja/1.10.1/linux/ninja-linux-x86-1.10.1.tar.gz
安裝
tar -xvf ninja-linux-x86-1.10.1.tar.gz -C ~/openharmony/1.1.3/prebuilts/build-tools/linux-x86/bin/
刪除安裝包
rm ninja-linux-x86-1.10.1.tar.gz
(8)安裝編譯和構(gòu)建工具
安裝 scons 軟件包
下載
用于 Hi3861 SDK 編譯和構(gòu)建
pip3 install scons
將pip包的bin文件所在目錄添加到PATH環(huán)境變量
echo 'export PATH=~/.local/bin:$PATH' | tee -a ~/.bashrc
生效環(huán)境變量
source ~/.bashrc
查看是否安裝成功
scons -v
安裝 GUI menuconfig 工具( Kconfiglib )軟件包
用于根據(jù) Kconfig 配置文件生成 Makefile 代碼段和頭文件
pip3 install kconfiglib
安裝 pycryptodome 和 ecdsa 軟件包
用于對編譯生成的二進制文件簽名
pip3 install pycryptodome ecdsa
安裝 gcc_riscv32(編譯工具鏈)
下載
wget https://repo.huaweicloud.com/harmonyos/compiler/gcc_riscv32/7.3.0/linux/gcc_riscv32-linux-7.3.0.tar.gz
安裝,解壓到用戶的home目錄下
tar -xvf gcc_riscv32-linux-7.3.0.tar.gz -C ~/
刪除安裝包
rm gcc_riscv32-linux-7.3.0.tar.gz
添加到 PATH
echo 'export PATH=~/gcc_riscv32/bin:$PATH' | tee -a ~/.bashrc
生效環(huán)境變量
source ~/.bashrc
(9)安裝Samba服務(wù)
安裝
sudo apt install samba
配置
ps:生成配置文件需要一點時間,耐心等待。
sudo gedit /etc/samba/smb.conf
在配置文件末尾添加以下內(nèi)容,保存,關(guān)閉。
[home]
comment = User Homes
path = /home
guest ok = no
writable = yes
browsable = yes
create mask = 0755
directory mask = 0755
指定共享賬號。
sudo smbpasswd -a XXXX(用戶名)
密碼使用用戶名對應(yīng)的密碼,方便記憶
重啟服務(wù)
sudo service smbd restart
(10)獲取源代碼的必要工具和配置
安裝 git 、 git-lfs
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
pip install requests
配置 git 用戶信息(請設(shè)置為自己的郵箱和用戶名)
git config --global user.email "XXXXXX@XXXX.com"
git config --global user.name "XXXXX"
至此,Ubuntu的編譯環(huán)境搭建完畢了。