当前位置:首页 » 编程软件 » 安卓源码编译

安卓源码编译

发布时间: 2022-01-23 02:51:12

① Android源码编译是干什么

编译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

然后运行模拟器

③ 安卓怎么使用修改过的源码编译程序

1、Android的文件系统结构是怎样的,我们安装的程序放在那里?
编译Android源码之后,在out/target/proct/generic一些文件:
ramdisk.img、system.img、userdata.img、 system、 data、root
其中, system.img是由 system打包压缩得到的, userdata.img是由 data打包压缩得到的。

ramdisk.img是模拟器的文件系统,把ramdisk.img解压出来可知道,ramdisk.img里的文件跟root文件夹的文件基本一样。模拟器装载ramdisk.img并解压到内存,接着分别把system.img和userdata.img挂载到 ramdisk下的system和data目录。我们编译出来的应用程序就是放在system/app下的。用户安装的程序则是放在data/app下。

2、Android SDK和android源码能为我们提供什么工具?
AndroidSDK提供有很多工具,如adb,ddms,emulator,aapt等,并提供kernel-qemu、ramdisk.img、system.img、userdata.img。因此,只要有android SDK,我们就可以在模拟器上把android跑起来。
Android源码可以编译出android SDK、adb等工具、android文件系统,以及ADT插件,也就是说,我们可以从android源码编译出所有android相关的东西。

3、 把Android源 码”make”之后会生成许多工具和android文件系统(system.img等),我们又可以使用“makesdk”来生成android SDK,android
SDK也包括有工具和android文件系统(system.img等),而原来安装的时候我们也安装了androidSDK,那么我们在开发时应该使用那些工具和android文件系统呢?

④ 如何将源代码编译后的文件编译到android中

1.将应用程序源码复制进Android源码目录中(提前编译好源码) 2.使用build/envsteup.sh 配置shell - mm TARGET_PRODUCT=proct_name 或直接./build_android.sh 也能完成编译。 3.在源码目录:out/target/proct/proctname/obj/APPS/test_cert_intermediates 下有三个文件:package.apk package.apk.unsigned package.apk.unaligned 将package.apk.unsigned复制出来,单独进行sign. 4.在Windows下进行sign: jarsigner -verbose -keystore youkey.keystore d:\package.apk.unsigned youkey 5.zipalign -v 4 d:\package.apk.unsigned d:\package.signed.apk

⑤ 有手机的源代码,如何编译安卓4.4的系统

代码编译…
恐怕这个不是随随便便在这里几句话就能说明白的…
首先要下载安卓4.4的内核,
然后要把厂商的手机源代码编译进去,
还要自己写脚本
很多都是很技术的活。
lz确定能hold住么?

⑥ 编译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,在这个目录下进行编译

⑦ 编译android源代码的目的是什么,编译后会得到什么东西

定制嘛,就是按你自己的要求设定方案,因为android是开源的,而且google提供了很完备的开发框架,有java基础的人可以很快上手。
源码定制估计是现在的android的市场一个发展方向,因为以前都是山寨机,软件硬件一个样,而现在智能机在硬件方面基本是差不多的,而android软件框架也是一样,但是开发比较简单,门槛很低,所以一些公司提供了定制服务,改动下源码提供个性化服务。个人理解,你可以继续网络了解下。
至于你想学开发android,先看下java,应用层是用java开发的,而且你以后也可以自己开发些小应用闹着玩。参考书方面很多,什么android应用开发揭秘啊,adk开发范例大全啊,精通android啊什么的,可以在网上找电子档或者别人的教学视频,很多的。

⑧ android源码编译后如何制作成rom

SDK是开发包,不是完整源代码吧。你可能需要在Linux上repo完整4.3源代码(25G左右,精简后8个多G)。如果手机内核不是3.0以上可能还要重新编译更新内核(Android4.3貌似一定要3.0以上内核版本)。其实我也不知道如何制作Rom,但略懂下载编译Android源代码和内核源代码,也想知道如何从源代码制作rom,希望能与楼主交流!

⑨ 为什么android源码还需要编译

android源码中有着许多的源代码,其中有c和c++编写的也有java编写,这些代码需要通过重新编译后才能在android机器上运行的!当然你修改源码,改完源码后还是需要对源码进行编译的编译的!android系统源码的整体编译需要很长时间,所以一般否是分开来编译的!这样缩短了编译的等待时间,而且也实现了不同人对不同板块代码的修改和编译的分工了!

⑩ 自己可以编译安卓源码吗

用最新的Ubuntu 16.04,请首先确保自己已经安装了Git.没安装的同学可以通过以下命令进行安装:

sudo apt-get install git git config –global user.email “[email protected]” git config –global user.name “test”

其中[email protected]为你自己的邮箱.

简要说明

android源码编译的四个流程:1.源码下载;2.构建编译环境;3.编译源码;4运行.下文也将按照该流程讲述.

源码下载

由于某墙的原因,这里我们采用国内的镜像源进行下载.
目前,可用的镜像源一般是科大和清华的,具体使用差不多,这里我选择清华大学镜像进行说明.(参考:科大源,清华源)

repo工具下载及安装

通过执行以下命令实现repo工具的下载和安装

mkdir ~/binPATH=~/bin:$PATHcurl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repochmod a+x ~/bin/repo

补充说明
这里,我来简单的介绍下repo工具,我们知道AOSP项目由不同的子项目组成,为了方便进行管理,Google采用Git对AOSP项目进行多仓库管理.在聊repo工具之前,我先带你来聊聊多仓库项目:

我们有个非常庞大的项目Pre,该项目由很多个子项目R1,R2,...Rn等组成,为了方便管理和协同开发,我们为每个子项目创立自己的仓库,整个项目的结构如下:


这里写图片描述

执行完该命令后,再使用make命令继续编译.某些情况下,当你执行jack-admin kill-server时可能提示你命令不存在,此时去你去out/host/linux-x86/bin/目录下会发现不存在jack-admin文件.如果我是你,我就会重新repo sync下,然后从头来过.

错误三:使用emulator时,虚拟机停在黑屏界面,点击无任何响应.此时,可能是kerner内核问题,解决方法如下:
执行如下命令:

  • ./out/host/linux-x86/bin/emulator -partition-size 1024 -kernel ./prebuilts/qemu-kernel/arm/kernel-qemu-armv7

  • 通过使用kernel-qemu-armv7内核 解决模拟器等待黑屏问题.而-partition-size 1024 则是解决警告: system partion siez adjusted to match image file (163 MB >66 MB)

    如果你一开始编译的版本是aosp_arm-eng,使用上述命令仍然不能解决等待黑屏问题时,不妨编译aosp_arm64-eng试试.

    结束吧

    到现在为止,你已经了解了整个android编译的流程.除此之外,我也简单的说明android源码的多仓库管理机制.下面,不妨自己动手尝试一下.

    热点内容
    安卓上哪里下大型游戏 发布:2024-12-23 15:10:58 浏览:189
    明日之后目前适用于什么配置 发布:2024-12-23 14:56:09 浏览:56
    php全角半角 发布:2024-12-23 14:55:17 浏览:829
    手机上传助手 发布:2024-12-23 14:55:14 浏览:733
    什么样的主机配置吃鸡开全效 发布:2024-12-23 14:55:13 浏览:830
    安卓我的世界114版本有什么 发布:2024-12-23 14:42:17 浏览:711
    vbox源码 发布:2024-12-23 14:41:32 浏览:278
    诗经是怎么存储 发布:2024-12-23 14:41:29 浏览:660
    屏蔽视频广告脚本 发布:2024-12-23 14:41:24 浏览:420
    php解析pdf 发布:2024-12-23 14:40:01 浏览:819