• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            life02

              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              197 隨筆 :: 3 文章 :: 37 評(píng)論 :: 0 Trackbacks

            http://www.cnblogs.com/dwayne/archive/2011/11/16/2250732.html

            之前我寫(xiě)了ubuntu 11.04下android源碼的獲取http://www.cnblogs.com/dwayne/archive/2011/11/11/2245383.html,在進(jìn)行編譯之后,發(fā)現(xiàn)了一些問(wèn)題,所以再次發(fā)上了補(bǔ)充篇。

            下載之后源碼的編譯部分是在ubuntu 11.10下完成的,編譯源碼的過(guò)程在整理出來(lái)以后wayne會(huì)寫(xiě)出來(lái)跟大家分享。本文是在記錄編譯源碼過(guò)程中的問(wèn)題和解決方法后,對(duì)以后再準(zhǔn)備進(jìn)行android源碼的分析工作做出提醒和經(jīng)驗(yàn)建議。

            在我之前的源碼獲取篇的基礎(chǔ)上,有以下幾點(diǎn)建議做出調(diào)整:

            1.避免選擇wubi安裝ubuntu系統(tǒng)(不穩(wěn)定,可能導(dǎo)致編譯失敗)。

            2.在安裝開(kāi)發(fā)過(guò)程中所需要的一些開(kāi)發(fā)包時(shí),為避免編譯過(guò)程中遇到些莫名問(wèn)題,在先前所說(shuō)基礎(chǔ)上,建議安裝以下包:

            $ sudo apt-get install lib64z1-dev libc6-dev-amd64 g++-multilib lib64stdc++6

            3.安裝java環(huán)境時(shí),選擇在線安裝方式會(huì)更方便。因?yàn)樗鼤?huì)安裝sun-java6-bin和sun-java6-jre,自動(dòng)配置編譯環(huán)境。

             

            以下是修改后的完整過(guò)程總結(jié):

            Attention:本文環(huán)境是在ubuntu 11.04+下獲取并編譯android 2.3.3_r1的源碼,記錄下過(guò)程,方便自己備份的同時(shí)也希望能對(duì)后來(lái)者有所幫助。

            官網(wǎng)上的要求信息為:

            In general you will need:

            • Python 2.4 -- 2.7, which you can download from python.org.

            • JDK 6 if you wish to build Gingerbread or newer; JDK 5 for Froyo or older. You can download both from java.sun.com.

            • Git 1.7 or newer. You can find it at git-scm.com.

            一、下載前準(zhǔn)備工作

            Note: The source download is approximately 6GB in size. You will need 25GB free to complete a single build, and up to 80GB (or more) for a full set of builds.

            1.首先,準(zhǔn)備好所需磁盤(pán)空間后,就來(lái)安裝開(kāi)發(fā)過(guò)程中需要的一些開(kāi)發(fā)包,在終端中執(zhí)行以下命令:

            $ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev libncurses5-dev x11proto-core-dev libx11-dev libreadline6-dev libgl1-mesa-dev tofrodos python-markdown libxml2-utils lib64z1-dev libc6-dev-amd64 g++-multilib lib64stdc++6

            2.安裝java環(huán)境

            安裝Java 6,因?yàn)樵诂F(xiàn)在的ubuntu系統(tǒng)包庫(kù)里,已經(jīng)不再包含JDK,因此我們需要手動(dòng)添加庫(kù),執(zhí)行如下命令:

            $ sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
            $ sudo apt-get update
            $ sudo apt-get install sun-java6-jdk

            之前安裝jdk時(shí),官網(wǎng)上給出了兩條添加庫(kù)語(yǔ)句,第二條

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

            是會(huì)提示錯(cuò)誤的

            Error: 'deb-src http://archive.canonical.com/ lucid partner' invalid

            昨天再看官網(wǎng)已經(jīng)更新了,去掉了這一條,很給力啊有木有~

             

            二、開(kāi)始下載源碼(這部分同ubuntu 11.04下android源碼的獲取http://www.cnblogs.com/dwayne/archive/2011/11/11/2245383.html

            現(xiàn)在我們已經(jīng)準(zhǔn)備好了android源碼開(kāi)發(fā)所需的環(huán)境(無(wú)錯(cuò)誤),下載源碼的過(guò)程由于Android的源碼很是龐大,需要分Android源碼和內(nèi)核兩部分獲取。內(nèi)核部分的源碼我暫時(shí)是不用的,所以這里只下載源碼。

            1.先新建一個(gè)文件夾存放Android目錄,并初始化repo:

            wayne@ubuntu:~$ mkdir Android
            wayne@ubuntu:~$ cd Android
            wayne@ubuntu:~/Android$ mkdir bin
            wayne@ubuntu:~/Android$ cd bin
            wayne@ubuntu:~/Android/bin$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo >repo
            % Total % Received % Xferd Average Speed Time Time Time Current
            Dload Upload Total Spent Left Speed
            100 19731 100 19731 0 0 14034 0 0:00:01 0:00:01 --:--:-- 17157


            在這里,幾個(gè)月前http://android.git.kernel.org/已經(jīng)無(wú)法訪問(wèn)了,很多朋友如果用的是這個(gè)源下載站點(diǎn),就會(huì)出現(xiàn)如下情況:

            wayne@ubuntu:~/Android/bin$ curl http://android.git.kernel.org/repo >repo
            % Total % Received % Xferd Average Speed Time Time Time Current
            Dload Upload Total Spent Left Speed
            100 244 100 244 0 0 75 0 0:00:03 0:00:03 --:--:-- 976

            然后在之后的代碼初始化時(shí)就會(huì)出現(xiàn)如下錯(cuò)誤:

            ./bin/repo: 行 1: 未預(yù)期的符號(hào) `newline' 附近有語(yǔ)法錯(cuò)誤
            ./bin/repo: 行 1: `<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">'

            2.現(xiàn)在繼續(xù)。建立存放源碼目錄source,初始化所需的android源碼版本,在終端執(zhí)行如下命令:

            wayne@ubuntu:~/Android/bin$ sudo chmod a+x repo
            wayne@ubuntu:~/Android/bin$ cd
            wayne@ubuntu:~$ cd Android/source/
            wayne@ubuntu:~/Android/source$ ../bin/repo init -u https://android.googlesource.com/platform/manifest -b android-2.3.3_r1
            gpg: 鑰匙環(huán)‘/home/wayne/.repoconfig/gnupg/secring.gpg’已建立
            gpg: 鑰匙環(huán)‘/home/wayne/.repoconfig/gnupg/pubring.gpg’已建立
            gpg: /home/wayne/.repoconfig/gnupg/trustdb.gpg:建立了信任度數(shù)據(jù)庫(kù)
            gpg: 密鑰 920F5C65:公鑰“Repo Maintainer <repo@android.kernel.org>”已導(dǎo)入
            gpg: 合計(jì)被處理的數(shù)量:1
            gpg: 已導(dǎo)入:1

            Get https://android.googlesource.com/tools/repo
            remote: Counting objects: 1414, done
            remote: Finding sources: 100% (78/78)
            remote: Total 1414 (delta 917), reused 1414 (delta 917)
            Receiving objects: 100% (1414/1414), 429.88 KiB | 169 KiB/s, done.
            Resolving deltas: 100% (917/917), done.
            From https://android.googlesource.com/tools/repo
            * [new branch] maint -> origin/maint
            * [new branch] master -> origin/master
            * [new branch] stable -> origin/stable
            ...

            這樣下來(lái)之后,會(huì)要求輸入用戶(hù)名和郵箱地址,隨意寫(xiě)個(gè)就ok。

            初始化完畢之后會(huì)出現(xiàn):

            repo initialized in /home/wayne/Android/source

            現(xiàn)在完成初始化之后便可以下載了,在終端執(zhí)行如下命令,開(kāi)始下載:

            wayne@ubuntu:~/Android/source$ ../bin/repo sync

            下載全部的源碼需要很長(zhǎng)時(shí)間,現(xiàn)在正在經(jīng)歷漫長(zhǎng)的等待……

            過(guò)程中時(shí)常看一下,也許會(huì)出錯(cuò)而中斷:

            error: Exited sync due to fetch errors

            遇到這些問(wèn)題時(shí),重新執(zhí)行一遍../bin/repo sync就ok。

            Fetching projects: 100% (165/165), done.
            Checking out files: 100% (3573/3573), done.ut files: 30% (1078/3573)
            Checking out files: 100% (4679/4679), done.out files: 33% (1580/4679)
            Checking out files: 100% (10008/10008), done.t files: 23% (2370/10008)
            Checking out files: 100% (11980/11980), done.t files: 0% (64/11980)
            Checking out files: 100% (9601/9601), done. out files: 0% (67/9601)
            Syncing work tree: 100% (165/165), done.

            下載完成。接下來(lái)就是編譯源碼了,敬請(qǐng)期待。

            還是一樣,歡迎交流指正!

            posted on 2011-12-27 18:36 life02 閱讀(941) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): 源碼學(xué)習(xí)
            一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区 | 国色天香久久久久久久小说| 97久久精品人人做人人爽| 国内精品久久久久影院一蜜桃| 久久精品国产亚洲AV蜜臀色欲| 日韩精品久久久久久久电影| 一本久久综合亚洲鲁鲁五月天| 日韩亚洲国产综合久久久| 色诱久久av| 亚洲中文久久精品无码| 无码久久精品国产亚洲Av影片| 无码国内精品久久人妻| 国产成人无码久久久精品一| 99久久免费国产精精品| 伊人久久大香线蕉影院95| 精品久久久久中文字| 久久久久免费视频| 日本五月天婷久久网站| 久久国产欧美日韩精品| 精品亚洲综合久久中文字幕| 久久久久18| 97精品国产97久久久久久免费| 久久夜色精品国产噜噜麻豆| 日韩精品国产自在久久现线拍| 国产精品久久久99| 精品熟女少妇AV免费久久| WWW婷婷AV久久久影片| 久久精品中文字幕第23页| 色8久久人人97超碰香蕉987| 国产一级持黄大片99久久| 一级做a爰片久久毛片毛片| 99国产精品久久久久久久成人热| 精品久久久久久无码人妻热 | 欧美性猛交xxxx免费看久久久| 久久无码中文字幕东京热| 久久久久中文字幕| 一本色道久久88—综合亚洲精品| 久久er热视频在这里精品| 久久天天躁夜夜躁狠狠| 国内精品久久久久久久涩爱| 亚洲AV无码一区东京热久久|