Ubuntu9.10下获取Android源码.doc
Ubuntu9.10下获取Android源码首先根据首先需要安装开发环境,需要如下包:· Required Packages: · Git 1.5.4 or newer and the GNU Privacy Guard. · · JDK 5.0, update 12 or higher. Java 6 is not supported, because of incompatibilities with Override. /只能用JDK5,JDK6不能兼容Override· · flex, bison, gperf, libsdl-dev, libesd0-dev, libwxgtk2.6-dev (optional), build-essential, zip, curl. $ sudo apt-get install git-core gnupg sun-java5-jdk flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev· You might also want Valgrind, a tool that will help you find memory leaks, stack corruption, array bounds overflows, etc./这个是帮你寻找内存漏洞,堆溢出,数组越界溢出的工具 $ sudo apt-get install valgrindUbuntu9.10的安装源已经没有JDK5了,所以需要用到9.04的安装源修改etcaptsources.list把9.04的源:deb jaunty main restricted universe multiversedeb-src jaunty main restricted universe multiversedeb jaunty-updates main restricted universe multiversedeb-src jaunty-updates main restricted universe multiversedeb jaunty-backports main restricted universe multiversedeb-src jaunty-backports main restricted universe multiversedeb jaunty-security main restricted universe multiversedeb-src jaunty-security main restricted universe multiverseupdate之后,用sudo apt-get install sun-java5-jdk 即可像以往一样安装java 1.5安装后的基本设置:sudo update-alternatives -config javasudo update-java-alternatives -s java-1.5.0-sun这时候再用java -version就能看到java 1.5已经正常工作了接下来就是安装repoTo install, initialize, and configure Repo, follow these steps:1. Make sure you have a /bin directory in your home directory, and check to be sure that this bin directory is in your path: $ cd $ mkdir bin $ echo $PATH2. Download the repo script and make sure it is executable:$ curl http:/android.git.kernel.org/repo >/bin/repo $ chmod a+x /bin/repo初始化repo1. Create an empty directory to hold your working files: $ mkdir mydroid$ cd mydroid2. Run repo init to bring down the latest version of Repo with all its most recent bug fixes. You must specify a URL for the manifest:$ repo init -u git:/android.git.kernel.org/platform/manifest.git 0. If you would like to check out a branch other than "master", specify it with -b, like:$ repo init -u git:/android.git.kernel.org/platform/manifest.git -b cupcake3. When prompted, configure Repo with your real name and email address. If you plan to submit code, use an email address that is associated with a Google account. A successful initialization will end with a message such as repo initialized in /mydroidYour client directory should now contain a .repo directory where files such as the manifest will be kept. 获取代码To pull down files to your working directory from the repositories as specified in the default manifest, run $ repo sync For more about repo sync and other Repo commands, see Using Repo and Git.The Android source files will be located in your working directory under their project names. 验证代码Load the following public key into your GnuPG key database. The key is used to sign annotated tags that represent releases. $ gpg -importthen paste the key(s) below, and press Control-D to end the input and process the keys. After importing the keys, you can verify any tag with $ git tag -v tagnamekey 9AB10E78: "The Android Open Source Project <initial-contribution>"-BEGIN PGP PUBLIC KEY BLOCK-Version: GnuPG v1.4.2.2 (GNU/Linux)mQGiBEnnWD4RBACt9/h4v9xnnGDou13y3dvOx6/t43LPPIxeJ8eX9WB+8LLuROSVlFhpHawsVAcFlmi7f7jdSRF+OvtZL9ShPKdLfwBJMNkU66/TZmPewS4m782ndtw78tR1cXb197Ob8kOfQB3A9yk2XZ4ei4ZC3i6wVdqHLRxABdncwu5hOF9KXwCgkxMDu4PVgChaAJzTYJ1EG+UYBIUEAJmfearb0qRAN7dEoff0FeXsEaUA6U90sEoVks0ZwNj96SA8BL+a1OoEUUfpMhiHyLuQSftxisJxTh+2QclzDviDyaTrkANjdYY7p2cq/HMdOY7LJlHaqtXmZxXjjtw5Uc2QG8UY8aziU3IE9nTjSwCXeJnuyvoizl9/I1S5jU5SA/9WwIps4SC84ielIXiGWEqq6i6/sk4I9q1YemZF2XVVKnmI1F4iCMtNKsR4MGSa1gA8s4iQbsKNWPgp7M3a51JCVCu6l/8zTpA+uUGapw4tWCp4o0dpIvDPBEa9b/aF/ygcR8mh5hgUfpF9IpXdknOsbKCvM9lSSfRciETykZc4wrRCVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdCA8aW5pdGlhbC1jb250cmlidXRpb25AYW5kcm9pZC5jb20+iGAEExECACAFAknnWD4CGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRDorT+BmrEOeNr+AJ42Xy6tEW7r3KzrJxnRX8mij9z8tgCdFfQYiHpYngkI2t09Ed+9Bm4gmEO5Ag0ESedYRBAIAKVW1JcMBWvV/0Bo9WiByJ9WJ5swMN36/vAlQN4mWRhfzDOk/Rosdb0csAO/l8Kz0gKQPOfObtyYjvI8JMC3rmi+LIvSUT9806UphisyEmmHv6U8gUb/xHLIanXGxwhYzjgeuAXVCsv+EvoPIHbY4L/KvP5x+oCJIDbkC2b1TvVk9PryzmE4BPIQL/NtgR1oLWm/uWR9zRUFtBnE411aMAN3qnAHBBMZzKMXLWBGWE0znfRrnczI5p49i2YZJAjyX1P2WzmScK49CV82dzLo71MnrF6fj+Udtb5+OgTg7Cow+8PRaTkJEW5Y2JIZpnRUq0CYxAmHYX79EMKHDSThf/8AAwUIAJPWsB/MpK+KMs/s3r6nJrnYLTfdZhtmQXimpoDMJg1zxmL8UfNUKiQZ6esoAWtDgpqt7Y7sKZ8laHRARonte394hidZzM5nb6hQvpPjt2OlPRsyqVxw4c/KsjADtAuKW9/d8phbN8bTyOJo856qg4oOEzKG9eeF7oaZTYBy33BTL0408sEBxiMior6b8LrZrAhkqDjAvUXRwm/fFKgpsOysxC6xi553CxBUCH2omNV6Ka1LNMwzSp9ILz8jEGqmUtkBszwoG1S8fXgE0Lq3cdDM/GJ4QXP/p6LiwNF99faDMTV3+2SAOGvytOX6KjKVzKOSsfJQhN0DlsIw8hqJc0WISQQYEQIACQUCSedYRAIbDAAKCRDorT+BmrEOeCUOAJ9qmR0lEXzeoxcdoafxqf6gZlJZlACgkWF7wi2YLW3Oa+jv2QSTlrx4KLM=Wi5D-END PGP PUBLIC KEY BLOCK-编译代码To build the files, run make from within your working directory: $ cd /mydroid $ makeIf your build fails, complaining about a missing "run-java-tool", try setting the ANDROID_JAVA_HOME env var to $JAVA_HOME before making. E.g., $ export ANDROID_JAVA_HOME=$JAVA_HOME