找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 1085|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

iTOP-4412開(kāi)發(fā)板android4.0代碼下載和編譯

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
Android4.0 源碼可以從光盤(pán),網(wǎng)盤(pán)獲取穩(wěn)定版本,也可以從 GitHub 下載我們的開(kāi)發(fā)版
本。GitHub 僅提供源碼下載,不提供二進(jìn)制下載,二進(jìn)制文件存放在光盤(pán)和網(wǎng)盤(pán)中。
基于迅為4412開(kāi)發(fā)板
6.3.1.1 repo 下載
android 代碼管理不同于 uboot,kernel,由于 Android 代碼比較龐大,我們把 Android
項(xiàng)目按照文件夾進(jìn)行項(xiàng)目拆分,android 源碼根目錄下面的每個(gè)子目錄都會(huì)劃分為一個(gè)倉(cāng)庫(kù)或
者多個(gè)倉(cāng)庫(kù)進(jìn)行版本管理,Android 的代碼下載需要使用 repo 工具,repo 工具為 Git 的封
裝,底層是使用 Git 命令進(jìn)行下載的。
假設(shè)將要下載的 repo 工具存放于 /media/data/gitHub 目錄:
#cd /media/data/GitHub/
#git clone git://aosp.tuna.tsinghua.edu.cn/android/git-repo.git/
git-repo 倉(cāng)庫(kù)下載完成后會(huì)看到該文件夾內(nèi)有 repo 腳本文件:

6.3.1.2 Android4.0 代碼下載
假設(shè)我們的 Android4.0 代碼存放在 /media/data/GitHub/iTop4412_ICS_git 目錄:
# cd /media/data/GitHub/iTop4412_ICS_git
#../git-repo/repo init –u https://github.com/TOPEET-Develop/android.git -b
exynos4412_android4.0.3_master
注意上一條命令中,換行字符“-b”之后有空格。

注: repo init 命令中–u 參數(shù)指定 android 倉(cāng)庫(kù)下載地址,-b 參數(shù)指定倉(cāng)庫(kù)中的下載
分支.
這里我下載的是 exynos4412_android4.0.3_master 分支,該命令執(zhí)行過(guò)程中需要輸入
相關(guān)的信息,如下圖所示:

Your Name 輸入 root
Your Email: 直接回車(chē)即可,然后在輸入 y, 回車(chē)?yán)^續(xù):

#../git-repo/repo sync
注: repo sync 開(kāi)始下載 Android 代碼,下載過(guò)程與網(wǎng)絡(luò)環(huán)境有一定的關(guān)系,如果下
載過(guò)程中長(zhǎng)時(shí)間沒(méi)有進(jìn)度顯示,可以 ctrl+c 終止下載,然后執(zhí)行 repo sync 命令重新開(kāi)始,
下圖為源碼下載過(guò)程中的進(jìn)度顯示:

代碼下載完成后會(huì)在 /media/data/GitHub/ iTop4412_ICS_git 目錄下面顯示 Android
系統(tǒng)源碼目錄:

每個(gè)文件夾目錄下面都會(huì)有一個(gè)或者多個(gè) Git 倉(cāng)庫(kù),默認(rèn)這些倉(cāng)庫(kù)是沒(méi)有分支的,我們需要
使用 repo star 命令創(chuàng)建分支,這里我們創(chuàng)建 master 分支,您也可以使用別的名字來(lái)定義分支
名稱(chēng),repo branch 命令可以查看創(chuàng)建的分支:
#../git-repo/repo start master --all
#../git-repo/repo branch

6.3.1.3 Android4.0 源碼編譯
Android 代碼下載完成后就可以進(jìn)行編譯了,Android 源碼編譯需要 kernel 支持,所
以我們需要把 Android 代碼與 kernel 代碼放到同一目錄下面:

注: 上圖中 iTOP4412_Kernel_3.0 為 Android 的內(nèi)核代碼, 與 Android4.0 源碼目錄
iTOP4412_ICS_git 在同一級(jí),另外編譯 Android4.0 之前需要編譯內(nèi)核代碼,在內(nèi)核代碼目
錄執(zhí)行:
# cp config_for_android_XX_YY .config
# make zImage
# make modules
config_for_android_XX_YY 中的 XX 指核心板類(lèi)型:scp,pop,pop2G, YY 指的是底板
類(lèi)型:精英版 elite,或者全能版 supper.
make modules 會(huì)編譯驅(qū)動(dòng)庫(kù)文件*.ko , Android4.0 會(huì)拷貝驅(qū)動(dòng)庫(kù)文件到 Android 的
目錄結(jié)構(gòu),否則 Android 的某些功能無(wú)法使用。
Android4.0 的執(zhí)行編譯命令:
#cd iTop4412_ICS_git
# ./build_android.sh
另外 Android 代碼下載,編譯完成后,可以定期使用 repo sync 命令同步我們的 Git 倉(cāng)
庫(kù)到本地,這樣您的本地代碼就跟我們的倉(cāng)庫(kù)保持同步更新了,編譯后就會(huì)形成最新的系統(tǒng)鏡
像.
我們的 Android4.0 代碼區(qū)分精英版和全能版,默認(rèn)我們下載的代碼編譯形成的鏡像可以
在精英板運(yùn)行,要編譯全能板版本,只需要修改一項(xiàng)配置即可:
文件路徑:iTop4412_ICS_git/device/samsung/smdk4x12/BoardConfig.mk
配置項(xiàng):BOARD_HAVE_MPU6050 ,該值配置成 false 代表編譯版本是精英板版本,如果
設(shè)置成 true,則會(huì)編譯全能板版本。
精英版配置:

全能版配置:

完成,更多內(nèi)容關(guān)注:迅為電子
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表