基於MTK iot Android的編譯環境建立和編譯命令說明

關鍵字 :MediaTekMTKiot
針對iot市場,mtk推出了全新的Genio平台,目前主要的平台有G350和G1200,下面關於G350和G1200在Android平台上編譯環境的搭建。

1.電腦配置要求:
處理器:i5以上
內存:16G以上
系統:ubuntu14.04以上,建議18.04
硬盤:500G以上​

2.代碼的獲取:
獲取到MTK的授權後,可以在MTK的Git01的下載
vim ~/.netrc
machine git01.mediatek.com login xxxx-aiot-git01-user password xxxxx​
xxxx要MTK提供相應的賬號和密碼

3.編譯環境的建立,下面是基於18.04安裝下面的主件

3.1安裝java
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jdk

sudo vim /etc/profile
在該文件最下方加入如下代碼:
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export PATH​

3.2 安裝依賴庫
sudo apt-get install git gnupg flex bison gperf libsdl1.2-dev
sudo apt-get install libesd-java libwxgtk3.0-dev squashfs-tools build-essential zip curl
sudo apt-get install libncurses5-dev zlib1g-dev pngcrush schedtool libxml2 libxml2-utils
sudo apt-get install xsltproc lzop libc6-dev schedtool g++-multilib lib32z1-dev lib32ncurses5-dev ninja-build rpm2cpio cpio
sudo apt-get install lib32readline-dev gcc-multilib libswitch-perl libssl-dev unzip device-tree-compiler vim

sudo apt-get install liblz4-tool python-pyelftools python3-pyelftools -y
sudo apt-get install git-core libc6-dev-i386 libncurses5 x11proto-core-dev libx11-dev libgl1-mesa-dev fontconfig​

以上編譯環境就建立OK了。

4.編譯代碼
從Android Q 版本開始,Mediatek 就開始導入 Layer Decoupling。Q 版本 和 R 版本為1.0 版本,即主要是system和vendor的分離。Mediatek Single System Image(MSSI) 的導入,同步支持 Split build 1.0從Android S 版本開始,Mediatek 進一步優化了Android 平台的軟體架構。一方面,為滿足Google GKI (Generic Kernel Image) 2.0 的需要,以及更好地解耦common flow 和 platform Setting,將平台相關的代碼限制在特定驅動層及與Android 無關的preloader、firmware 等子系統。另一方面,為提升客戶多平台開發效率、降低開發維護成本,同時將driver 開發從基於平台開發改為基於IP 設計維護,提升driver/HAL 的兼容性、延續性、通用性。總體上來說,即將原本的vendor 進一步分離,剝離出與平台無關的部分。同時,考慮到Legacy平台的兼容性,Legacy平台都維持在 Layer Decoupling 1.0,不再變化。而2021 年下半年開始的新平台(使用kernel >=5.10) 則會啟用 Layer Decoupling 2.0。

下面就是關於這2個命令編譯命令的使用:
4.1 針對使用 android layer decouple 1.0 的老平台,默認還可以使用virtual full build:
source build/envsetup.sh
lunch full_aiot8365p6_64_bsp_userdebug
make -16​

4.2 針對使用 android layer decouple 2.0 的平台(Kernel >= 5.10)
python vendor/mediatek/proprietary/scripts/releasetools/split_build_helper.py --run full_aiot8365p3_64_bsp_k510-eng​

以上就是MTK iot基於Android的編譯環境建立和編譯命令說明

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★博文作者未開放評論功能