歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 64bits Ubuntu下編譯Android步驟及所遇到問題解決

64bits Ubuntu下編譯Android步驟及所遇到問題解決

日期:2017/2/28 16:17:38   编辑:Linux教程

第一步:對環境的准備:

1. 在windows下安裝virtualbox,virtual下載地址:http://www.virtualbox.org/wiki/Downloads,下載最新版本,我的是4.0.2 r69518

2. 下載Ubuntu 64bits ISO image, 我是下載的這裡:http://mirror01.th.ifl.net/releases/10.04.1/ubuntu-10.04.1-desktop-i386.iso

3. 在virtualbox上,安裝ubuntu,我選擇的都是缺省設置和安裝;

第二步:下載source code,我主要參考了 http://source.android.com/source/downloading.html,

1. download http://android.git.kernel.org/repo, 把文件 repo 放到你的linux命令執行路徑;

2. 因為公司只能用http代理上網,所以無法直接使用git協議連接到git server,倒是http協議可以,所以更改repo文件的這一行內容:

REPO_URL='git://Android.git.kernel.org/tools/repo.git'

為:

REPO_URL='http://android.git.kernel.org/tools/repo.git'

3. 在命令行內,執行全局代理服務器設置:

export http_proxy=http://proxyIP:proxyPort

export HTTP_PROXY=http://proxyIP:proxyPort

我也不知道大寫的還是小寫的要用到,反正都設上吧!

4. In your working directory, repo init -u http://android.git.kernel.org/platform/manifest.git

5. 執行完成後,你會在工作目錄下獲得這個文件:working_dir/.repo/manifest.xml

把它的git://android.git.kernel.org/ 改為:http://android.git.kernel.org/

6. 在工作目錄下執行:repo syn

7. 休息,等待漫長的時間完成上一步;大約要下載兩G多的內容

8. 運行,gpg --import,然後輸入key的內容,key的內容可以在http://source.android.com/source/downloading.htm找到;

第三步:准備編譯環境,請參考http://source.android.com/source/initializing.html:

1. 設置好deb的software repo source, 增加這兩個:

sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"

sudo add-apt-repository "deb-src http://archive.canonical.com/ubuntu lucid partner"

2. 執行更新sudo apt-get update

3. 安裝sun-java6-sdk: sudo apt-get install sun-java6-jdk

據說要編譯Froyo和老的版本要java5,我沒有試

4.參考網頁上說要在ubuntu系統中安裝如下軟件包:

git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev

我在執行過程中發現兩個問題:

a. lib32z-dev在我的系統中不存在,我系統中只有:lib32z1-dev,所以裝這個;

b. 除了上面的軟件包要安裝外還要安裝g++-multilib,否則會發生找不到合適的stdc++庫的錯誤,google官方參考網頁說,只有在編譯Froyo以前的版本才需要,這種說法在我的環境下是錯誤的。

5. 據說還要設置usb設備的訪問,我這次沒有作,以後做了再記錄下來;

第四步:編譯全系統

1. source ./build/envsetup.sh

2.lunch full-eng

3. make -j4

如果你沒有給你的虛擬機分4個cpu,就不要加-j4了,會更慢

我花了兩個多小時完成的make -j4,

還沒有測試編好的emulator(虛擬機上的虛擬機:emulator on virtualbox)。等測試完成,再寫步驟。

Copyright © Linux教程網 All Rights Reserved