I.MX6q環境中下載和編譯android8.0源碼------不再更新8.0

1/去飛思卡爾官網下載相關資料,如下鏈接:

https://www.nxp.com/products/processors-and-microcontrollers/arm-based-processors-and-mcus/i.mx-applications-processors/i.mx-8-processors/i.mx-software-and-development-tool:IMX-SW

需下載 imx-o8.0.0_1.0.0_ga.tar.gz 文件,鏈接如下: (註冊下載)

https://www.nxp.com/webapp/sps/download/preDownload.jsp

2/配置環境

(android官方Ubuntu 14.04環境下所需)

sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip

(飛思卡爾所需軟件包)

sudo apt-get install uuid uuid-dev
sudo apt-get install zliblg-dev liblz-dev
sudo apt-get install liblzo2-2 liblzo2-dev
sudo apt-get install lzop
sudo apt-get install git-core curl
sudo apt-get install u-boot-tools
sudo apt-get install mtd-utils
sudo apt-get install android-tools-fsutils
sudo apt-get install openjdk-8-jdk
sudo apt-get install device-tree-compiler
sudo apt-get install gdisk

3/配置git

git config--global user.name“first last”

git config--global user.email“[email protected]

4/接下解壓 imx-o8.0.0_1.0.0_ga.tar.gz 文件到根目錄(可以複製到)

tar xzvf mx-o8.0.0_1.0.0_ga.tar.gz

5/下載源碼

mkdir ~/bin
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
export PATH=${PATH}:~/bin
source ~/imx-o8.0.0_1.0.0_ga/imx_android_setup.sh

默認情況下,imx_android_setup.sh腳本將創建源代碼構建環境
在文件夾~/android_build中

漫長等待之後。。。。下載成功,如下顯示

remote: Total 31731 (delta 5319), reused 31317 (delta 5319)         
Receiving objects: 100% (31731/31731), 1.69 GiB | 546.00 KiB/s, done.
Resolving deltas: 100% (5319/5319), done.
From https://android.googlesource.com/platform/prebuilts/gradle-plugin
 * [new tag]           android-8.0.0_r25 -> android-8.0.0_r25
Fetching projects: 100% (596/596)
Fetching projects: 100% (596/596), done.  
Checking out files: 100% (6639/6639), done.
Checking out files: 100% (14442/14442), done.iles:  20% (2981/14442)   
Checking out files: 100% (7295/7295), done.
Checking out files: 100% (5916/5916), done.t files:  32% (1949/5916)   
Checking out files: 100% (11930/11930), done.
Checking out files: 100% (38/38), done.g out files:  42% (16/38)   
Checking out files: 100% (14578/14578), done.files:  44% (6485/14578)   
Checking out files: 100% (914/914), done.
Checking out files: 100% (9234/9234), done.t files:   9% (855/9234)   
Checking out files: 100% (962/962), done.out files:  55% (537/962)   
Checking out files: 100% (8/8), done.ing out files: 100% (8/8)   
Checking out files: 100% (12663/12663), done.
Checking out files: 100% (2859/2859), done.t files:   3% (103/2859)   
Checking out files: 100% (9128/9128), done.ut files:  20% (1866/9128)   
Checking out files: 100% (477/477), done. out files:   7% (34/477)   
Checking out files: 100% (175/175), done.
Checking out files: 100% (21719/21719), done.
Checking out files: 100% (5501/5501), done.ut files:  43% (2387/5501)   
Checking out files: 100% (223/223), done. out files:   4% (11/223)   
Checking out files: 100% (4509/4509), done.ut files:  26% (1205/4509)   
Checking out files: 100% (756/756), done. out files:  97% (740/756)   
Checking out files: 100% (4289/4289), done.ut files:  72% (3126/4289)   
Checking out files: 100% (8982/8982), done.ut files:   4% (385/8982)   
Checking out files: 100% (2796/2796), done.ut files:  29% (825/2796)   
Checking out files: 100% (4191/4191), done.ut files:  16% (695/4191)   
Checking out files: 100% (25541/25541), done. files:   3% (833/25541)   
Checking out files: 100% (5061/5061), done.ut files:  21% (1063/5061)   
Checking out files: 100% (6161/6161), done.ut files:  90% (5599/6161)   
Checking out files: 100% (3404/3404), done.ut files:  37% (1271/3404)   
Checking out files: 100% (2814/2814), done.
Checking out files: 100% (3203/3203), done.ut files:  80% (2577/3203)   
Checking out files: 100% (309/309), done. out files:  27% (86/309)   
Checking out files: 100% (7971/7971), done.ut files:   0% (18/7971)   
Checking out files: 100% (8228/8228), done.
Checking out files: 100% (28555/28555), done.
Checking out files: 100% (190/190), done. out files:  70% (133/190)   
Checking out files: 100% (742/742), done.
Checking out files: 100% (247/247), done.
Checking out files: 100% (127/127), done.
Checking out files: 100% (188/188), done.
Checking out files: 100% (243/243), done. out files:  60% (148/243)   
Checking out files: 100% (249/249), done.
Checking out files: 100% (128/128), done.
Checking out files: 100% (190/190), done.
Checking out files: 100% (3205/3205), done.
Checking out files: 100% (3541/3541), done.ut files:  54% (1945/3541)   
Checking out files: 100% (4427/4427), done.
Checking out files: 100% (222/222), done.
Checking out files: 100% (245/245), done.
Checking out files: 100% (1765/1765), done.
Checking out files: 100% (6578/6578), done.ut files:   7% (484/6578)   
Checking out files: 100% (6578/6578), done.
Checking out files: 100% (29024/29024), done.
Checking out files: 100% (8588/8588), done.
Checking out files: 100% (2056/2056), done.ut files:   2% (47/2056)   
Checking out files: 100% (96785/96785), done.
Checking out files: 100% (63/63), done.
Checking out files: 100% (1887/1887), done.
Checking out files: 100% (9537/9537), done.ut files:   0% (68/9537)   
Checking out files: 100% (713/713), done. out files:  14% (105/713)   
Checking out files: 100% (15779/15779), done. files:  50% (7914/15779)   
Checking out files: 100% (29/29), done.ng out files:  27% (8/29)   
Checking out files: 100% (57086/57086), done. files:   2% (1631/57086)   
Checking out files: 100% (13512/13512), done.

Android source is ready for the build

 如果出現 error: Exited sync due to gc errors 的原因,除非的你的ubuntu版本真的很老,可以google解決之外。解決不了的情況下,重裝系統是首要選擇。我的是18.04,我由於上次下載的android8.1官方版的沒有刪除乾淨導致,浪費了太長時間在查找問題上,重裝系統之後一步到位。

關於編譯如下,

source build/envsetup.sh

lunch sabresd_6dq-userdebug

make 2>&1 | tee build-log.txt

編譯過程中出現

 build stopped: subcommand failed.問題

執行

export LC_ALL=C

然後重複上述編譯過程。

 

 

。。。。。。。。。。。。。。。。。經過領導安排,由於種種原因,最終還是選擇了4.4.2版本(驅動之類的已經完善,更穩定,更適配目前的硬件),所以之後不再涉及高版本的源碼相關知識,或許,當硬件大升級之後,會做高版本的處理再來研究吧,後續博客會更新我的4.4.2 開發遇到得問題和困難以及如何解決問題的

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章