2022年Android.编译教程 .pdf





《2022年Android.编译教程 .pdf》由会员分享,可在线阅读,更多相关《2022年Android.编译教程 .pdf(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Android4.0 编译教程作者 Zorv 本 文 主 要 参 考 官 方 文 档 ( http:/ 和 网 上 相 关 资 料(http:/ . id-15-kernel-image/) 。网上的资料对于andorid 的最新代码有的已经过时,或者有错误,这份文档本人亲自实验,保证可行。另本人没有使用eclipse的习惯,所以并没有做eclipse 的相关配置。编译环境: ubuntu9.10,widnows 平台目前不被支持。1)安装必要的软件环境1. $ sudo apt-get install git-core gnupg sun-java5-jdk flex bison gperf
2、 libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev 复制代码官方推荐的就是上面这些,如果在编译过程中发现某些命令找不到,就apt-get 它。可能需要的包还有:1. $ sudo apt-get install make 2. $ sudo apt-get install gcc 3. $ sudo apt-get install g+ 4. $ sudo apt-get install libc6-dev 5. 6. $ sudo apt-get install
3、 patch 7. $ sudo apt-get install texinfo 8. 9. $ sudo apt-get install zlib1g-dev 10. $ sudo apt-get install valgrind 11. $ sudo apt-get install python2.5 (或者更高版本)复制代码需要注意的是, 官方文档说如果用sun-java6-jdk 可出问题, 得要用 sun-java5- jdk。经测试发现,如果仅仅make(make 不包括 make sdk) ,用 sun-java6-jdk 是没有问题的。而make sdk,就会有问题,严格来说是
4、在make doc 出问题,它需要的javadoc 版本为 1.5。因此,我们安装完sun-java6-jdk 后最好再安装sun-java5-jdk ,或者只安装sun-java5-jdk。这里 sun-java6-jdk 和 sun-java5-jdk 都安装, 并只修改javadoc.1.gz 和 javadoc。因为只有这两个是 make sdk 用到的。这样的话,除了javadoc 工具是用1.5 版本,其它均用1.6 版本:1. $ sudo apt-get install sun-java6-jdk 复制代码修改 javadoc 的 link 1. $ cd /etc/alter
5、natives 2. $ sudo rm javadoc.1.gz 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 8 页 - - - - - - - - - 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 ja
6、vadoc 复制代码2)设置环境变量1. $ emacs /.bashrc 复制代码在.bashrc 中新增或整合PATH 变量,如下:#java 程序开发 /运行的一些环境变量1. JAVA_HOME=/usr/lib/jvm/java-6-sun 2. JRE_HOME=$JA VA_HOME/jre 3. export ANDROID_JA VA_HOME=$JA VA_HOME 4. export CLASSPATH=.:$JA VA_HOME/lib:$JRE_HOME/lib:$CLASSPATH 5. export JAVA_PATH=$JA VA_HOME/bin:$JRE_H
7、OME/bin 6. export JAVA_HOME; 7. export JRE_HOME; 8. export CLASSPATH; 9. HOME_BIN=/bin/ 10. export PATH=$PATH:$JA VA_PATH:$HOME_BIN; 复制代码保存后,同步更新:1. source /.bashrc 复制代码3)安装 repo(用来更新android 源码)创建 /bin 目录,用来存放repo 程序,如下:1. $ cd 2. $ mkdir bin 复制代码并加到环境变量PATH 中,在第2 步中已经加入下载 repo 脚本并使其可执行:1. $ curl ht
8、tp:/android.git.kernel.org/repo /bin/repo (由于地址有所更改,google 新提供了地址,因此本处更改为:2. curl https:/dl- /bin/repo 3. $ chmod a+x /bin/repo 复制代码4)初始化repo repo 是 android 对 git 的一个封装,简化了一些git 的操作。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 8 页 - - - - - - - - - 创建工程目录:1.
9、$ mkdir android 2. $ cd android 3. repo 初始化4. $ repo init -u git:/android.git.kernel.org/platform/manifest.git (同上更改为:5. repo init -u https:/ )6. 复制代码在此过程中需要输入名字和email 地址。初始化成功后,会显示:1. repo initialized in /android 复制代码在/android 下会有一个 .repo 的隐藏目录。5)同步源代码1. $ repo sync 复制代码这一步要很久很久6)编译 android 源码 ,并得到
10、 /android/out 目录1. $ cd /andoird 2. $ make 复制代码这一过程很久7)在模拟器上运行编译好的android 1. 编译好android 之后, emulator 在 /android/out/host/linux-x86/bin 下, ramdisk.img ,system.img 和 userdata.img 则在 /android/out/target/product /generic 下2. $ cd /android/out/host/linux-x86/bin 复制代码增加环境变量1. $ emacs /.bashrc 复制代码在.bashrc
11、 中新增环境变量,如下#java 程序开发 /运行的一些环境变量1. export ANDROID_PRODUCT_OUT=/android/out/target/product/generic 2. ANDROID_PRODUCT_OUT_BIN=/android/out/host/linux-x86/bin 3. export PATH=$PATH:$ANDROID_PRODUCT_OUT_BIN:$ANDROID_PRODUCT_OUT; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - -
12、 - 第 3 页,共 8 页 - - - - - - - - - 复制代码最后,同步这些变化:1. $ source /.bashrc 2. $ cd /android/out/target/product/generic 3. $ emulator -system system.img -data userdata.img -ramdisk ramdisk.img 复制代码最后进入android 桌面,就说明成功了。8)编译模块android 中的一个应用程序可以单独编译,编译后要重新生成system.img 在源码目录下执行$ . build/envsetup.sh ( .后面有空格)就多
13、出一些命令:1. - croot: Changes directory to the top of the tree. 2. - m: Makes from the top of the tree. 3. - mm: Builds all of the modules in the current directory. 4. - mmm: Builds all of the modules in the supplied directories. 5. - cgrep: Greps on all local C/C+ files. 6. - jgrep: Greps on all local
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年Android.编译教程 2022 Android 编译 教程

限制150内