日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

编译Android源码

發(fā)布時(shí)間:2025/3/13 Android 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 编译Android源码 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

通過參考網(wǎng)上的相關(guān)資料,我編譯Android源碼的步驟如下:

  • 1 我的系統(tǒng)是Ubuntu 8.04
  • 2 系統(tǒng)上必須安裝以下工具(摘自網(wǎng)上的資料):
    ?
    ?sudo apt-get install build-essential
    ?sudo apt-get install make
    ?sudo apt-get install gcc
    ?sudo apt-get install g++
    ?sudo apt-get install libc6-dev
    ?
    ?sudo apt-get install flex
    ?sudo apt-get install bison
    ?sudo apt-get install patch
    ?sudo apt-get install texinfo
    ?sudo apt-get install libncurses-dev
    ?
    ?sudo apt-get install git-core gnupg??//(gnupg系統(tǒng)可能已自帶)
    ?sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl
    ?sudo apt-get install ncurses-dev?
    ?sudo apt-get install zlib1g-dev
    ?sudo apt-get install valgrind(可選,有21M大,我覺得一般人是用不到的)
    ?sudo apt-get install python2.5 (實(shí)際上不用裝,Ubuntu 8.04 已經(jīng)自帶)
    ?sudo apt-get install sun-java5-jdk
    ?
    ?注意:
    ?a. 不要用 sun-java6-jdk, 不然在make sdk, 具體來說是make doc這一步中, 遇到這個(gè)錯(cuò)誤:
    ???Docs droiddoc: out/target/common/docs/dx
    ???javadoc: error - In doclet class DroidDoc, method start has thrown an
    ???exception java.lang.reflect.InvocationTargetException
    ???com.sun.tools.javac.code.Symbol$CompletionFailure: class file for
    ???sun.util.resources.OpenListResourceBundle not found
    ?b. 網(wǎng)上資料說需要設(shè)置環(huán)境變量, 但我并沒有設(shè)置:
    ??export ANDROID_JAVA_HOME=$JAVA_HOME
    ??
    ?c. 網(wǎng)上并沒有提及要安裝ncurses-dev, 但安裝之前我編譯過程中會(huì)出現(xiàn)編譯錯(cuò)誤.
    ?
  • 3 建立android源碼的存放目錄
    ?$ mkdir ~/open_src
    ?$ mkdir ~/open_src/android
    ?$ cd ~/open_src/android
    ?$ mkdir bi
  • 4 下載repo腳本,放到~/open_src/android/bin目錄下,加上可執(zhí)行權(quán)

????????? $ curl http://android.git.kernel.org/repo > repo
??????????$ sudo mv repo ~/open_src/android/bin
????????? $ sudo chmod a+x ~/open_src/android/bin/repo?

  • 5 在源碼存放目錄android中執(zhí)行
    ?$ ~/open_src/android/bin/repo init -u git://android.git.kernel.org/platform/manifest.git
    ?//中間會(huì)提示輸入電子郵件什么的, 如果你打算要提交patch的話,用google accounts注冊(cè)過的郵箱
    ?
  • 6 在android目錄中執(zhí)行repo sync就可以開始下載源碼了.
    ?我們也可以從其他地方把源碼復(fù)制到android目錄, 而我正是這么做的.
  • 7 編譯源碼, 并得到~/open_src/android/out 目錄
    ?在命令行執(zhí)行make命令:
    ?$make
    ?這 是一個(gè)很漫長的過程, 等吧......
  • 8 測(cè)試運(yùn)行
    ?8.1 先設(shè)置環(huán)境變量:
    ??打開~/.bashrc文件, 并在最后添加下面兩行:
    ??export PATH=$PATH:~/open_src/android/out/host/linux-x86/bin
    ??export ANDROID_PRODUCT_OUT=~/open_src/android/out/target/product/generic
    ?
    ?8.2 運(yùn)行模擬器:
    ??emulator --debug-init -skin QVGA-L??//可能會(huì)提示unknown option: --debug-init, 去掉--debug-init即可
    ??或者直接執(zhí)行emulator, 這樣使用的是默認(rèn)的皮膚
    ?
    ?如 果最后能進(jìn)入到系統(tǒng)并看到一個(gè)大時(shí)鐘, 說明就大功告成了.
    ?
    ?
  • 9 后續(xù)編譯:

?????????? 先在android目錄下執(zhí)行
?????????? $ . build/envsetup.sh
???????????然 后你就會(huì)多出幾個(gè)可用的命令。在改了Contacts聯(lián)系人項(xiàng)目后,可以簡單的執(zhí)行一下命令來單獨(dú)編譯這個(gè)部分:
?????????? $mmm packages/apps/Contacts/
???????? ?為了可以直接測(cè)試改動(dòng),需要生成新的system.img,在android目錄下執(zhí)行:
?????????? $ make snod
????????? 當(dāng)然,如果你改動(dòng)的是emulator或者其它外圍相關(guān)的,而非系統(tǒng)內(nèi)部的東西,就不只是要重新生成system.img了

  • 以下是編譯成功后的最后一些輸出:
    Install: out/target/product/generic/system/xbin/scp
    Notice file: system/extras/showmap/NOTICE -- out/target/product/generic/obj/NOTICE_FILES/src//system/xbin/showmap.txt
    Install: out/target/product/generic/system/xbin/showmap
    Notice file: system/extras/showslab/NOTICE -- out/target/product/generic/obj/NOTICE_FILES/src//system/xbin/showslab.txt
    Install: out/target/product/generic/system/xbin/showslab
    Notice file: external/sqlite/dist/NOTICE -- out/target/product/generic/obj/NOTICE_FILES/src//system/xbin/sqlite3.txt
    Install: out/target/product/generic/system/xbin/sqlite3
    Notice file: external/dropbear/NOTICE -- out/target/product/generic/obj/NOTICE_FILES/src//system/xbin/ssh.txt
    Install: out/target/product/generic/system/xbin/ssh
    Install: out/target/product/generic/system/xbin/strace
    Notice file: system/extras/su/NOTICE -- out/target/product/generic/obj/NOTICE_FILES/src//system/xbin/su.txt
    Install: out/target/product/generic/system/xbin/su
    Install: out/target/product/generic/system/xbin/timeinfo
    Copy: out/target/product/generic/system/etc/apns-conf.xml
    Copying: out/target/product/generic/obj/NOTICE_FILES/src/kernel.txt
    Finding NOTICE files: out/target/product/generic/obj/NOTICE_FILES/hash-timestamp
    Combining NOTICE files: out/target/product/generic/obj/NOTICE.html
    gzip -c out/target/product/generic/obj/NOTICE.html > out/target/product/generic/obj/NOTICE.html.gz
    zip -qj out/target/product/generic/system/etc/security/otacerts.zip build/target/product/security/testkey.x509.pem
    Generated: (out/target/product/generic/android-info.txt)
    Target system fs image: out/target/product/generic/obj/PACKAGING/systemimage_unopt_intermediates/system.img
    Install system fs image: out/target/product/generic/system.img
    Target ram disk: out/target/product/generic/ramdisk.img
    Target userdata fs image: out/target/product/generic/userdata.img

轉(zhuǎn)載于:https://www.cnblogs.com/AlexCheng/archive/2010/09/09/2120212.html

總結(jié)

以上是生活随笔為你收集整理的编译Android源码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 伊人狠狠操| 日韩另类 | 爽爽影院在线 | 久久精品www人人爽人人 | 久久久久久久偷拍 | 日本精品一区二区 | 91色| 欧美黑人巨大xxx极品 | 欧美影音 | 亚洲无码国产精品 | 农村妇女av | 欧美在线视频免费 | 男人桶进美女尿囗 | 免费在线观看黄色网址 | 色婷婷六月天 | av在线不卡播放 | 黄色大全在线观看 | 亚洲二三区 | 瑟瑟久久 | 国产原创视频在线 | 欧美91在线 | 91私密视频 | wwww黄色片| 美女脱了内裤喂我喝尿视频 | 亚洲欧美另类在线观看 | 国产在线观看免费高清 | 中文字幕视频网站 | 成人在线观看91 | 黑人巨大精品欧美黑寡妇 | 国产三级小视频 | www.亚洲一区 | 97干干干 | 国产又粗又长视频 | 黄色免费视频网站 | 看国产毛片 | 久久久久人 | 又色又爽又高潮免费视频国产 | 午夜精品一区二区三区在线 | 俄罗斯女人裸体性做爰 | 神马午夜在线观看 | 免费看成人毛片 | 欧美精品 日韩 | 欧美aⅴ在线观看 | gogo人体做爰大胆视频 | 女人扒开腿让男人捅爽 | www.成年人 | 日韩少妇内射免费播放18禁裸乳 | 男阳茎进女阳道视频大全 | 国产精品女人久久久 | 美女尿尿网站 | 9999av | 丝袜av网站| 强公把我次次高潮hd | 日韩av手机在线观看 | 国产又黄又大又粗的视频 | 天天操天天操天天射 | 毛片毛片毛片毛片毛片毛片毛片毛片 | 精品亚洲永久免费精品 | 99精品久久久久 | 国产精品不卡av | 国产一区二区91 | 大咪咪dvd| 99热精品国产 | 亚洲一区二区三区午夜 | 自拍偷拍免费 | 久久这里只有 | 少妇又紧又深又湿又爽视频 | 男男play视频 | 影院色原网站 | 肥臀av | 91av在线播放 | 国产91在线观看丝袜 | 国产一级视频在线播放 | 国产免费久久 | 亚洲一区二区三区中文字幕 | 欧美韩日精品 | 黄片毛片| 2020亚洲男人天堂 | 亚洲色图36p | 亚洲美女福利 | 欧美在线播放一区二区 | 牛牛澡牛牛爽一区二区 | 天堂国产一区二区三区 | 粉嫩av一区| 在线免费看av网站 | 大陆女明星乱淫合集 | 亚洲精品国产精品乱码不卡√香蕉 | 国产精品高潮呻吟久久av野狼 | 精品乱子一区二区三区 | 久久综合加勒比 | 欧美一区亚洲 | 三级免费网站 | 熟妇高潮一区二区高潮 | 精品国产av一区二区 | 一级片播放| 日本韩国中文字幕 | 夜夜操夜夜骑 | 最新日韩精品 | japanese在线 |