体育资讯网

您现在的位置是:首页 > 分类11 > 正文

分类11

ubuntu下载安卓源码(ubuntu安卓应用)

hacker2022-07-11 22:30:46分类1161
本文目录一览:1、如何获取android源代码2、

本文目录一览:

如何获取android源代码

当前的Android 代码托管在两个方:  和  之前在 android.git.kernel.org 上也有托管,不过现在重定向到ubuntu下载安卓源码了  好在都支持git访问。

google 提供的 repo 工具实际上是一个内部操作git工具来简化操作Android源码的Python脚本。经过尝试,直接使用git 工具在ubuntu 下可以实现clone Android 源码。下面介绍一下方法:

1. 获取当前的在github 上托管的Android git repositories:

github页面为:  。不过这个页面不支持通过 wget "" 或者 curl "" 的方式访问, 错误信息如下:

这样一来,获取这个页面内容并解析出其中的git repositories就需要手工完成ubuntu下载安卓源码了。好在方法也很简单: 浏览器中打开这个页面,然后"查看源文件"并保存为文本文件,比如保存为"android_git.html"。最后,通过下面的一行脚本来取出 Android git repositories.

grep -o "span class=\"repo\".*/span" ./android_git.html | cut -d "" -f2 | cut -d "" -f1  android_git.txt

2. 基于第1步获取的Android git repositories 来生成clone git的脚本:

执行如下的一行awk脚本

awk 'BEGIN{i=1; print "#!/usr/bin/env bash" }{ print "\n\necho \"begin clone android git ["i"]: " $1 "\""; print "git clone 

" $1 ".git"; print "echo \"finish clone android git ["i"]: " $1 "\"" ; i=i+1; }' ./android_git.txt  

git_clone_android.sh

现在用于clone android git的脚本生成好了,一共有 103 个 git repository.

3. 执行git_clone_android.sh这个脚本即可。

整体Android 源码的代码量是相当庞大,完成所有的clone 任务后,大概占用了 7G 磁盘空间,历时20多个小时,这是在网速比较快的情况下达到的效果:

其间也有许多问题,比如多次出现如下的错误:

这个时候需能做的只能是"try again"了。

需要说明的是"不要试图同时并发执行多个git clone 命令",这样会导致大量出现上面贴图中的错误,另外,整个clone过程中耗时最多的git repository 如下:

kernel_common.git kernel_msm.git platform_frameworks_base.git platform_prebuilt.git 其中 platform_prebuilt.git 是google 提供的预编译好的二进制文件,包含: 各种库文件,jar 包,可执行程序等等,如果只是阅读Android 源代码,这个git repository 可以不用clone.

ubuntu linux 虚拟机下载android2.3.3源码 提示磁盘空间不足,我装的时候给了40G啊

androidubuntu下载安卓源码的源码下载好大概是10G左右同步出来有14,5个Gubuntu下载安卓源码,嗯ubuntu下载安卓源码,肯定是盘太小ubuntu下载安卓源码

如何用ubuntu编译android 源码

点击任务栏中的“应用程序”-----“附件”------“终端”,打开终端命令行关机,英文版本的系统操作就如下图所示

进入到下载好的Android4.4源码目录中,小编的源码目录就在宿主目录下的android4.4中,如下图

为了提高编译的效率,我们最好先设置一下编译器的高速缓存从而加快编译速度,使用下面的命令

prebuilts/misc/linux-x86/ccache/ccache -M 50G

注意事项:

1、前提是已经在 .bashrc文件中添加:export USE_CCACHE = 1

2、ccache是一个可执行文件

3、-M 50G 两个参数表示设置50G大小的空间作为缓存,这个数值可以根据自己时间硬盘空间大小继续调整

ubuntu下如何获取源码包和源码

1、在获取源码包之前,确保在软件源配置文件/etc/apt/sources.list中添加了deb-src项 2、使用如下命令获取xxx源码包的详细信息: sudo apt-cache showsrc xxx这用来查询当前镜像站点中是否有该源码包。 3、源码包中通常包含3个文件,分别以dsc,orig.tar.gz和diff.gz为后缀名。 sudo apt-get source xxx 命令来获取源码包,它会将源码包下载到用户当前目录 并在命令执行过程中,调用dpkg-source命令,根据dsc文件中的信息,将源码包解压到同名目录中,应用程序的源代码就在这里面。 sudo apt-get source xxx 要强调的是,在下载源码包前,必须确保安装了dpkg-dev(执行”apt-get install dpkg-dev”来安装), 否则,只会下载源码包的3个文件,但不会解压缩源码包。当然你也可以自己用dpkg-source命令去解压缩源码包。 4、在编译源码包前,需要安装具有依赖关系的相关软件包。使用”apt-get build-dep”命令可以主动获取并安装所有相关的软件包。 sudo apt-get build-dep xxx 5、现在可以来编译源码包了,首先进入源码所在目录,使用dpkg-buildpackage命令来编译源码包,它会将生成的Deb软件包放置在上层目录中。cd xxx sudo dpkg-buildpackage 这样就会编译生成xxx_i386.deb 6、安装软件包。使用”dpkg –i”命令来安装生成的Deb软件包。

如何在32位ubuntu11.10 下编译android 4.0.1源码和goldfish内核

一准备工作

1安装javasdk6

(1)从jdk官方网站下载jdk-6u29-linux-i586.bin文件。

(2)执行jdk安装文件

[html] view plaincopy

$chmod a+x jdk-6u29-linux-i586.bin

$jdk-6u29-linux-i586.bin

(3)配置jdk环境变量

[html] view plaincopy

$sudo vim /etc/profile

[html] view plaincopy

#JAVAEVIRENMENT

exportJAVA_HOME=/usr/lib/java/jdk1.6.0_29

exportJRE_HOME=$JAVA_HOME/jre

exportCLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

exportPATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

保存后退出编辑,并重启系统。

2安装依赖包

[html] view plaincopy

$sudo apt-get install git-core gnupg flex bison gperf build-essential\

zipcurlzlib1g-devlibc6-devlib32ncurses5-devia32-libs\

x11proto-core-devlibx11-devlib32readline5-devlib32z-dev\

libgl1-mesa-devg++-multilibmingw32tofrodospython-markdown\

libxml2-utils

3用repo工具下载源码

(1)初始化repo

[html] view plaincopy

$cd ~

$mkdir bin

$curl;~/bin/repo

$chmod a+x ~/bin/repo

$exportPATH=$PATH:~/bin(导出环境变量)

(2)下载android最新源码

[html] view plaincopy

$mkdir android

$cd android

$ repo init -u -bandroid-4.0.1_r1

...(输入用户名和邮箱名)

$repo sync -j5

...(此处用5个线程开始下载源码,下载过程及其漫长,需要耐心等待)

二 编译源码

1开始编译

[html] view plaincopy

$source build/envsetup.sh

includingdevice/samsung/maguro/vendorsetup.sh

includingdevice/samsung/tuna/vendorsetup.sh

includingdevice/ti/panda/vendorsetup.sh

includingsdk/bash_completion/adb.bash

$make-j4(此处用4个线程编译)

编译完成后,会看到类似的输出:

[html] view plaincopy

Targetramdisk:out/target/product/generic/ramdisk.img

Targetuserdatafsimage:out/target/product/generic/userdata.img

Installedfilelist:out/target/product/generic/installed-files.txt

2编译遇到的问题

编译错误:

[html] view plaincopy

命令行:0:0:错误:“_FORTIFY_SOURCE”重定义[-Werror]

built-in:0:0:附注: 这是先前定义的位置

cc1plus:所有的警告都被当作是错误

make:*** [out/host/linux-x86/obj/EXECUTABLES/obbtool_intermediates/Main.o]错误 1

原因:

因机器上的gcc版本过高,需替换成4.4.6重新进行编译。

解决方法:

1)安装4.4版本的gcc和g++

[html] view plaincopy

$ sudo apt-get install gcc-4.4

$ sudo apt-get install g++-4.4

2)设置gcc版本,使gcc链接到gcc-4.4

[html] view plaincopy

$ ls -l /usr/bin/gcc*

lrwxrwxrwx 1 root root 7 2011-11-01 23:56 /usr/bin/gcc - gcc-4.6

-rwxr-xr-x 1 root root 224544 2011-10-06 05:47 /usr/bin/gcc-4.4

-rwxr-xr-x 1 root root 302104 2011-09-17 05:43 /usr/bin/gcc-4.6

$ cd /usr/bin

$ sudo mv gcc gcc.bak

$ sudo ln -s gcc-4.4 gcc

3)设置g++版本,使g++链接到g++-4.4

[html] view plaincopy

$ sudo mv g++ g++.bak

$ sudo ln -s g++-4.4 g++

4)设置完毕后,重新进行编译即可

3从模拟器启动编译后的镜像文件

1)设置环境变量:

[html] view plaincopy

export PATH=~/android/out/host/linux-x86/bin:$PATH

export ANDROID_PRODUCT_OUT=~/android/out/target/product/generic

其中linux-x86/bin存放模拟器emulator工具,product/generic存在编译后的镜像文件。

2)启动模拟器

[html] view plaincopy

$emulator

emulator:WARNING: system partition size adjusted to match image file (162 MB 66 MB)

启动后的截图:

三 编译androidgoldfish内核

1)进入android4.0.1源码目录,下载goldfish内核源码

[html] view plaincopy

$ mkdir kernel

$ cd kernel

$ git clone

$ cd goldfish

$ git branch -a

* (no branch)

master

remotes/origin/HEAD - origin/master

remotes/origin/android-goldfish-2.6.29

remotes/origin/master

$ git checkout remotes/origin/android-goldfish-2.6.29

2)修改Makefile

[html] view plaincopy

goldfish$ gedit Makefile

修改

[html] view plaincopy

ARCH ?=$(SUBARCH)

CROSS_COMPILE ?=

[html] view plaincopy

ARCH ?=arm

CROSS_COMPILE ?=arm-eabi-

3)导出交叉编译器目录为环境变量

$ export PATH=$PATH:~/android/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin

4)编译内核

[html] view plaincopy

goldfish$ make goldfish_armv7_defconfig

goldfish$ make

编译完成后,可看到类似如下的输出:

[html] view plaincopy

OBJCOPY arch/arm/boot/zImage

Kernel: arch/arm/boot/zImage is ready

5)从模拟器中启动内核镜像

[html] view plaincopy

$emulator -kernel ~/android/kernel/goldfish/arch/arm/boot/zImage

启动模拟器后,可从Settings-System-AboutPhone中查看内核版本信息。

ubuntu下用什么软件查看andorid源代码

代码是开源的,但是系统默认不会安装所有的源代码,只安装必须用到的二进制文件(可执行程序)、库文件、配置文件、头文件等,否则会占用极其庞大的硬盘空间(恐怕这不是你希望的结果)……

如果想看源代码的话,有两种方式:

1. 直接到项目站点,下载源代码包

2. ubuntu下使用 sudo apt-get source * 下载某一个包的源代码

发表评论

评论列表

  • 鸠骨惘说(2022-07-12 10:24:31)回复取消回复

    USE_CCACHE = 12、ccache是一个可执行文件3、-M 50G 两个参数表示设置50G大小的空间作为缓存,这个数值可以根据自己时间硬盘空间大小继续调整ubuntu下

  • 痴者卿忬(2022-07-11 22:37:39)回复取消回复

    行”apt-get install dpkg-dev”来安装),否则,只会下载源码包的3个文件,但不会解压缩源码包。当然你也可以自己用dpkg-source命令去解压缩源码包。4、在编译源码包前,需要安装具有依赖关系的相关软件包。

  • 痛言绮筵(2022-07-11 22:42:54)回复取消回复

    [html] view plaincopy#JAVAEVIRENMENT exportJAVA_HOME=/usr/lib/java/jdk1.6.0_29 exportJRE_HOME=$

  • 离鸢听净(2022-07-12 02:08:12)回复取消回复

    oid 源码。下面介绍一下方法:1. 获取当前的在github 上托管的Android git repositories:github页面为:  。不过这个页面不支持通过 wget "" 或者 curl "" 的方式访问, 错误信息如下:这样一来,获取这个页面内容

  • 拥嬉孤央(2022-07-11 22:44:31)回复取消回复

    gdevice/samsung/tuna/vendorsetup.sh includingdevice/ti/panda/vendorsetup.sh includingsdk/bash_completion/adb.bash