一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

一次Android操作系統(tǒng)源碼的編譯經驗

 紫火神兵 2012-10-09

最近根據看到的資料編譯了一遍Android操作系統(tǒng)的源碼,結果是成功的,但過程是曲折,首先要說的是前提條件,這個很重要,我開始就是因為沒有滿足前提條件而多走了許多彎路。
    1、從http://source.獲取最新的Android源碼編譯資料,這個不是下面編譯必須用到的,
但確是所有有關Android操作系統(tǒng)源碼的編譯資料中較為準確的。

    2、使用ubuntu linux 12.04 LTS,如果你要按照我寫的嘗試一下就選這個,這樣可以節(jié)省你的時間;

    3、安裝相關軟件包

點擊(此處)折疊或打開

  1. sudo apt-get install git-core
  2. sudo apt-get install gnupg
  3. sudo apt-get install flex
  4. sudo apt-get install bison
  5. sudo apt-get install gperf
  6. sudo apt-get install libsdl-dev
  7. sudo apt-get install libesd0-dev
  8. sudo apt-get install build-essential
  9. sudo apt-get install zip
  10. sudo apt-get install curl
  11. sudo apt-get install libncurses5-dev
  12. sudo apt-get install zlib1g-dev
      在我寫這篇文章時,上述安裝都是成功的,但到您看到時是否成功就不敢保證了,因為有可能有些軟件源
已經發(fā)生變化了,如果出現這種情況可以根據安裝中出現的提示中的關鍵詞上網上查查最新的解決方案,一般都
是更新軟件源,下面是更新軟件源的一般方法:
    【備份軟件源】
    sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
    (如果想恢復原來的軟件源執(zhí)行:sudo cp /etc/apt/sources.list.backup /etc/apt/sources.list)
    【編輯軟件源】
    sudo gedit /etc/apt/sources.list
    將更新的軟件源在文件尾部添加并保存退出
    【更新軟件源】
    sudo apt-get update

    4、安裝java jdk
    (1)如果系統(tǒng)已經安裝了jdk和jre最好先卸載掉;(apt-get remove jdk軟件名)
    (2)更新jdk軟件源
     sudo add-apt-repository " deb http://us.archive./ubuntu/ hardy multiverse"
     sudo apt-get update
    (3)安裝java jdk6
     sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts sun-java6-jdk
     (4)安裝java jdk5
     sudo apt-get install sun-java5-jdk
     (5)修改javadoc的link

點擊(此處)折疊或打開

  1. cd /etc/alternatives
  2. sudo rm javadoc.1.gz
  3. sudo ln -s /usr/lib/jvm/java-1.5.0-sun/man/man1/javadoc.1.gz javadoc.1.gz
  4. sudo rm javadoc
  5. sudo ln -s /usr/lib/jvm/java-1.5.0-sun/bin/javadoc javadoc
   
    5、設置環(huán)境變量
    sudo gedit ~/.bashrc
    在文件尾部添加

點擊(此處)折疊或打開

  1. JAVA_HOME=/usr/lib/jvm/java-6-sun
  2. JRE_HOME=${JAVA_HOME}/jre
  3. export ANDROID_JAVA_HOME=$JAVA_HOME
  4. export CLASSPATH=.:${JAVA_HOME}/lib:$JRE_HOME/lib:$CLASSPATH
  5. export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
  6. export JRE_PATH=$JAVA_PATH
  7. export JAVA_HOME;
  8. export JRE_HOME;
  9. export CLASSPATH;
  10. HOME_LIB=~/bin/
  11. export PATH=${PATH}:${JAVA_PATH}:${JRE_PATH}:${HOME_BIN};
  12. #echo $PATH
     執(zhí)行:sudo source ~/.bashrc
     建議:干到這里最好重啟一下ubuntu。

     6、安裝編譯工具
    【先解決一個android官網下載不了的問題】
      sudo gedit /etc/hosts
      在文件尾部追加一句:74.125.237.1 dl-ssl.google.com

     cd ~
     mkdir bin
     以下命令用http://source./source/downloading.html上的
     curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
     chmod a+x ~/bin/repo

     7、安裝gcc4.4  

點擊(此處)折疊或打開

  1. sudo apt-get install gcc-4.4
  2. sudo apt-get install g++-4.4
  3. sudo apt-get install g++-4.4-multilib
  4. sudo rm -rf /usr/bin/gcc /usr/bin/g++
  5. sudo ln -s /usr/bin/gcc-4.4 /usr/bin/gcc
  6. sudo ln -s /usr/bin/g++-4.4 /usr/bin/g++
     
      8、安裝python
       sudo apt-get install python
     
      9、下載Android源代碼

點擊(此處)折疊或打開

  1. mkdir ~/work/android-cts-2.2_r8
  2. cd ~/work/android-cts-2.2_r8
  3. repo init -u https://android./platform/manifest -b android-cts-2.2_r8
  4. repo sync
       這是一個漫長的過程,最好在個假期中進行。、

     10、將源代碼中有關java版本校驗的信息注釋掉
      cd ~/work/android-cts-2.2_r8
      gedit ./build/core/main.mk

點擊(此處)折疊或打開

  1. # Check for the correct version of java
  2. #java_version := $(shell java -version 2>&1 | head -n 1 | grep '[ "]1\.5[\. "$$]')
  3. #ifeq ($(strip $(java_version)),)
  4. #$(info ************************************************************)
  5. #$(info You are attempting to build with the incorrect version)
  6. #$(info of java.)
  7. #$(info $(space))
  8. #$(info Your version is: $(shell java -version 2>&1 | head -n 1).)
  9. #$(info The correct version is: 1.5.)
  10. #$(info $(space))
  11. #$(info Please follow the machine setup instructions at)
  12. #$(info $(space)$(space)$(space)$(space)http://source./download)
  13. #$(info ************************************************************)
  14. #$(error stop)
  15. #endif

  16. # Check for the correct version of javac
  17. #javac_version := $(shell javac -version 2>&1 | head -n 1 | grep '[ "]1\.5[\. "$$]')
  18. #ifeq ($(strip $(javac_version)),)
  19. #$(info ************************************************************)
  20. #$(info You are attempting to build with the incorrect version)
  21. #$(info of javac.)
  22. #$(info $(space))
  23. #$(info Your version is: $(shell javac -version 2>&1 | head -n 1).)
  24. #$(info The correct version is: 1.5.)
  25. #$(info $(space))
  26. #$(info Please follow the machine setup instructions at)
  27. #$(info $(space)$(space)$(space)$(space)http://source./download)
  28. #$(info ************************************************************)
  29. #$(error stop)
  30. #endif
      11、編譯前的最后一次準備

點擊(此處)折疊或打開

  1. cd ~/work/android-cts-2.2_r8
  2. source ./build/envsetup.sh
  3. lunch full-eng
      12、編譯源代碼
      好了經過漫長的準備終于可以編譯了。

點擊(此處)折疊或打開

  1. cd ~/work/android-cts-2.2_r8
  2. make
     這個也是個漫長的過程,在假期中耐心等待吧。

      13、運行編譯察看結果
      如果上面sudo gedit /etc/profile
編譯成功的話我們就可以進行這一步用虛擬機看看結果了。
      (1)到Android官網下載SDK,http://developer./sdk/index.html
       (2)將下載的SDK解壓縮到主文件夾,并改名為android-sdk-linux。
       (3)sudo gedit /etc/profile
                將
                export PATH="$PATH:~/android-sdk-linux/tools"
                寫入文件最后
        (4)sudo gedit ~/.profile
                 將

點擊(此處)折疊或打開

  1. export PATH="$PATH:$HOME/work/android-cts-2.2_r8/out/host/linux-x86/bin"

  2. ANDROID_PRODUCT_OUT=$HOME/work/android-cts-2.2_r8/out/target/product/generic
  3. export ANDROID_PRODUCT_OUT
                 寫入文件結尾。
          (5)用android 命令打開Android SDK Manager界面,下載安裝android2.2的SDK Platform。
          (6)終于可以看結果了

點擊(此處)折疊或打開

  1. cd ~/work/android-cts-2.2_r8/out/target/product/generic
  2. emulator -image system.img -data userdata.img -ramdisk ramdisk.img




    

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    中文字幕91在线观看| 亚洲欧美天堂精品在线| 亚洲品质一区二区三区| 开心五月激情综合婷婷色| 国产精品欧美激情在线| 开心激情网 激情五月天| 国产精品内射婷婷一级二级| 日本深夜福利视频在线| 亚洲综合色在线视频香蕉视频| 中国一区二区三区人妻| 开心五月激情综合婷婷色| 国产精品一区欧美二区| 高跟丝袜av在线一区二区三区| 国产一区欧美一区日韩一区| 国语久精品在视频在线观看| 国产成人午夜福利片片| 精品国产av一区二区三区不卡蜜| 国产精品视频一区麻豆专区| 国产麻豆一区二区三区在| 国产又粗又猛又长又大| 亚洲欧洲成人精品香蕉网| 激情五月天免费在线观看| 国产免费一区二区三区av大片| 91久久国产福利自产拍| 美女黄色三级深夜福利| 国产av天堂一区二区三区粉嫩| 午夜精品一区免费视频| 欧美亚洲国产日韩一区二区| 美女激情免费在线观看| 中文字幕一区二区三区大片| 极品少妇嫩草视频在线观看| 国产精品视频久久一区| 国产午夜免费在线视频| 国产一区二区精品高清免费| 开心激情网 激情五月天| 国产欧美高清精品一区| 欧美国产日韩在线综合| 欧美日韩最近中国黄片| 日本理论片午夜在线观看| 美女激情免费在线观看| 国产性情片一区二区三区|