当前位置:首页 » 编程软件 » android编译51源码

android编译51源码

发布时间: 2022-03-31 19:28:39

1. 如何单独编译安卓系统源码指定模块

Android源码目录下的build/envsetup.sh文件,描述编译的命令

- m: Makes from the top of the tree.

- mm: Builds all of the moles in the current directory.

- mmm: Builds all of the moles in the supplied directories.

要想使用这些命令,首先需要在android源码根目录执行. build/envsetup.sh 脚本设置环境

m:编译所有的模块

mm:编译当前目录下的模块,当前目录下要有Android.mk文件

mmm:编译指定路径下的模块,指定路径下要有Android.mk文件

下面举个例子说明,假设我要编译android下的\hardware\libhardware_legacy\power模块,当前目录为源码根目录,方法如下:

1、. build/envsetup.sh

2、mmm hardware/libhardware_legacy/power/

编译完后 运行 make snod

会重新将你改过的模块打入到system.img中

2. 编译android源码5.1.1多大

android源码5.1.1
很大

3. 编译 android 源码 用什么配置机器

用Android studio编译最低配置8G内存,i5处理器,才勉强带的动,要是有经济条件的,配16G内存,i7处理器,就可以了,7000块钱

4. Android源码编译是干什么

编译Android系统。

5. 一个超级大的安卓SDK,解压之后怎么关联到ubuntu14

android sdk包括开发android app所需要的编译、调试、测试开发工具和API库。

下载android sdk:

http://developer.android.com/sdk/index.html

在这个下载页中提供两种下载方式:

  • 集成了adt的ide和android sdk的包,即包含了android sdk、adt、eclipse的包。下载后,解压就可以了用了,所有依赖关系统都已设置好了。

  • 仅仅只有android sdk的包。

  • 由于我们需要了解详细的过程。所以我们目前选择下载仅仅只有android sdk的包。

    安装、设置:

  • 下载、安装androidsdk

  • 设置androidsdk环境变量

  • windows平台下:

    下载后,解压到到目录:

    E:sourceandroidandroid-sdk-windows

    设置环境变量:ANDROID_SDK=E:sourceandroidandroid-sdk-windows

    linux平台下:

    下载集成了的sdk包

    k@k-C410:/data/adt-bundle-linux-x86_64-20130917$ ls
    eclipse sdk

    设置sdk的环境变量:

    export ANDROID_SDK=/data/adt-bundle-linux-x86_64-20130917/sdk

    放到~/.bashrc文件中。

    如果你是新手,看到这里就可以了,下面的内容你可能会看得晕,但是等你看完后面的文章后,再回头看下面的内容,你就会好理解了.

    android sdk浏览:

    在根目录中:

    AVD Manager.exe:虚拟机管理工具

    SDK Manager.exe:sdk管理工具

    tools目录:包括测试、调试、第三方工具。模拟器、数据管理工具等。

    build-tools目录:编译工具目录,包含了转化为davlik虚拟机的编译工具。

    platform-tools目录:包含开发app的平台依赖的开发和调试工具。包括 adb、fastboot等

    platforms/<android-version>目录:包括android的平台。包含在android.jar库中。你必须指一个平台为你的编译目标。

    system-images目录:编译好的系统映像。模拟器可以直接加载。

    sources目录:androidsdk的源码目录

    samples目录:sdk例子

    android sdk工具介绍:

    SDK Manager.exe:sdk管理工具,用于管理、下载sdk、sdk工具,能及扩展工具。

    zipalign:

    对齐工具。用于对签名后的apk包进行对齐。

更多信息可参考《Linux就该这么学》

6. 编译Android源码和内核源码的区别

Android源码编译之后生成的是ramdisk.img、system.img和userdata.img。而内核源码编译完成之后生成的是ZImage。在一般情况下Android源码是不带有内核源码的,但是带有一个镜像,这样在编译完Android源码之后就可以模拟器启动了,如果要更换系统的内核,此时将高版本的内核源码进行编译生成ZImage然后替换Android系统的的镜像。这样使用模拟器启动之后就可以查看内核是否已经被刷新。
请注意,android源码和kernel源码是分开下载的

编译android源码
进入source目录下,执行make 即可。
编译完成后,可以在源码目录的out/target/proct/generic/目录下看到编译好的ramdisk.img、system.img和userdata.img了。

编译内核源码
新建Kernel/goldfish,在这个目录下进行编译

7. android编译源码后怎样运行

编译:
1. 初始化:
source build/envsetup.sh
2. 选择target
lunch
然后选择aosp_arm

3.
make -j4

等待大概2个小时,就可以顺利编译完成。

模拟器运行
直接运行emulator,会出现如下错误:

emulator: ERROR: You did not specify a virtual device name, and the system

directory could not be found.

原因是文件路径没有设置,解决办法添加绝对路径:

out/host/Linux-x86/bin/emulator -kernel prebuilts/qemu-kernel/arm/kernel-qemu -sysdir out/target/proct/generic/ -system out/target/proct/generic/system.img -ramdisk out/target/proct/generic/ramdisk.img -data out/target/proct/generic/userdata.img -sdcard sdcard.img -scale 0.7 -memory 512 -partition-size 1024

然后运行模拟器

8. Android编译和运行在手机上使用的系统源码版本各是什么版本

如果app是和android系统一起进行编译,如果想让app的源码保持一套,却能够同时在android4.1和android4.2下进行编译。如果app源码与android系统的版本无关,那么,不存在问题。
但,如果app的实现代码与所依赖的framework的版本强相关,譬如,Location相关的API,在android4.1和android4.2上的差异比较大。应用如果是采用4.2的API来实现的,在配合android4.1系统编译时就会报错。此时,可以采用在Android.mk文件中,根据PLATFORM_SDK_VERSION的值,在编译时决定要编入哪些Java文件,源码中同时保留针对android4.1和android4.2的特有实现。
源码目录为:

9. 编译android源码时,意外中断,如何能让其接着编译 ,求高手解答

重新编译,会检查已经编译过的,不需要再编译,没有编译过的需要重新编译

10. 如何单独编译Android源码中的模块

第一次下载好Android源代码工程后,我们通常是在Android源代码工程目录下执行make命令,经过漫长的等待之后,就可以得到Android系统镜像system.img了。以后如果我们修改了Android源代码中的某个模块或者在Android源代码工程新增一个自己的模块,是不是还是执行make命令呢?答案是否定的,Google为我们准备了另外的命令来支持编译单独的模块,以及重新打包system.img的命令。在继续学习Android源代码之前,就让我们先来看看这个命令吧。
一. 首先在Android源代码目录下的build目录下,有个脚本文件envsetup.sh,执行这个脚本文件后,就可以获得一些有用的工具: USER-NAME@MACHINE-NAME:~/Android$ . ./build/envsetup.sh 注意,这是一个source命令,执行之后,就会有一些额外的命令可以使用: - croot: Changes directory to the top of the tree. - m: Makes from the top of the tree. - mm: Builds all of the moles in the current directory. - mmm: Builds all of the moles in the supplied directories. - cgrep: Greps on all local C/C++ files. - jgrep: Greps on all local Java files. - resgrep: Greps on all local res/*.xml files. - godir: Go to the directory containing a file. 这些命令的具体用法,可以在命令的后面加-help来查看,这里我们只关注mmm命令,也就是可以用它来编译指定目录的所有模块,通常这个目录只包含一个模块。
二. 使用mmm命令来编译指定的模块,例如Email应用程序: USER-NAME@MACHINE-NAME:~/Android$ mmm packages/apps/Email/ 编译完成之后,就可以在out/target/proct/generic/system/app目录下看到Email.apk文件了。Android系统自带的App都放在这具目录下。另外,Android系统的一些可执行文件,例如C编译的可执行文件,放在out/target/proct/generic/system/bin目录下,动态链接库文件放在out/target/proct/generic/system/lib目录下,out/target/proct/generic/system/lib/hw目录存放的是硬件抽象层(HAL)接口文件。
三. 编译好模块后,还要重新打包一下system.img文件,这样我们把system.img运行在模拟器上时,就可以看到我们的程序了。 USER-NAME@MACHINE-NAME:~/Android$ make snod
四. 参照Ubuntu上下载、编译和安装Android最新源代码一文介绍的方法运行模拟器: USER-NAME@MACHINE-NAME:~/Android$ emulator 这样一切就搞定了。

热点内容
如何修改服务密码10086 发布:2025-01-24 12:44:27 浏览:512
dosftp连接 发布:2025-01-24 12:35:56 浏览:802
编程来炒股 发布:2025-01-24 12:35:14 浏览:854
python正则中括号 发布:2025-01-24 12:32:08 浏览:584
配置排列用英语怎么说 发布:2025-01-24 12:32:00 浏览:607
led流水灯c语言程序 发布:2025-01-24 12:28:15 浏览:46
苹果平板锁屏密码在哪里 发布:2025-01-24 12:16:41 浏览:958
网校c语言 发布:2025-01-24 12:12:15 浏览:787
少儿机器人编程哪个机构好 发布:2025-01-24 11:51:18 浏览:697
按键小精灵脚本提取 发布:2025-01-24 11:50:03 浏览:864