导航:首页 > 源码编译 > 如何编译安卓源码

如何编译安卓源码

发布时间:2022-01-16 18:57:39

① 如何单独编译android源代码中的模块

1.make 模块名称
需要查看Android.mk文件的LOCAL_PACKAGE_NAME变量。
2.mmm命令
用于在源码根目录编译指定模块,参数为模块的相对路径。只能在第一次编译后使用。比如要编译Phone部分源码,需要在终端中执行以下命令:
$mmm packages/apps/phone
3.mm命令
用于在模块根目录编译这个模块。只能在第一次编译后使用。例如要编译Phone部分源码,需要在终端中执行以下命令:
$cd packages/apps/phone
$mm
注:mmm和mm命令必须在执行“.build/envsetup.sh”之后才能使用,并且只编译发生变化的文件。如果要编译模块的所有文件,需要-B选项,例如mm -B。

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

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

③ 如何将源代码编译后的文件编译到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

linux下如何编译Android源码~~~

使用的是putty.exe软件本身机器windows环境连接服务器的linux环境编译androidputty.exe界面在上面有提到了输入你的账号密码后会进入这样的效果就算是成功了可以ls就是当前目录下的文件/文件夹_job就是我的文件夹接下来我们就要进入到源码所在的目录cd 你的android源文件的目录比较笨的方法就是cd _joblscd _........就是一层一层的往下走好的办法就是cd job/按Tab键 会自动填写目录名(如果有多个文件夹他会给你列出来)如果顺利的来到源文件目录下在编译前我们需要预编译一下(可能在源码里面还有没有解包的需要完全解包)下面的所有的命令前面必须要加 sudo-->超级用户模式还有就是下面的命令都是要在根目录下进行编译编译前预处理(make prebuild)执行完成后就可以进行编译了编译Android代码(make)-->要等最少1-3个小时吧等编译完成后就可以使用Eclipse修改你的源码了编译后处理(make firmware)su make firmware注意:编译时必须要在根目录下进行

⑤ 自己编译安卓源码怎么实现root

建议按如下步骤操作:
1、使用USB数据线将手机与电脑连接。
2、 在电脑上,打开360安全卫士,找到360手机助手,点击“立即连接”。
3、下载并安装手机版360手机助手。
4、选择‘我的手机’,点击‘管理你的手机预装软件’,就可以准确的查看到自己的手机有多少个自带软件。可以点击右上角的“一键root”,也可以卸载如何一个软件,系统会自动提醒你“root”的,点击确定。
5、获取ROOT权限的时间有点长,大概需要5-10分钟,具体和手机的内存及软件有关。
6、当屏幕显示“恭喜您,已经成功获取root权限!”字样,就说明完工了,再点击“完成”就可以了。
7、现在手机已经成功获取root权限,可以点击‘我的手机’,再点击“管理预装软件“进行卸载了。值得注意的是,并不是所有的软件都可以删,有些如日历、计算机、天气等必备软件删除了,手机可能就要刷机了,ROOT是回不去的,要慎重选择要删除的软件。

⑥ windows下如何编译android源码

如果没记错,windows下是没法编译android框架源代码的

因为android是基于linux平台的,因此底层的很多东西都是基于linux系统的

如果只是单纯的android应用程序,则可以在windows下开发编译

只需要用Eclipse的adt插件加上windows下开发的Android SDK就行了。

⑦ 如何定制android源码的编译选项

现仅就工作遇到的问题做个总结。所用硬件平台为amlogic stvm3。---------------------------------------------------------------------------关于版本号:文件build/core/version_defaults.mk用来检查一些跟版本相关的变量是否定义;如果未定义,则使用默认值。这些变量包括 PLATFORM_VERSION # 如 2.2.5 PLATFORM_SDK_VERSION # 8, 对应2.2.5 PLATFORM_VERSION_CODENAME # REL,即发行版 DEFAULT_APP_TARGET_SDK # 同SDK_VERSION或VERSION_CODENAME BUILD_ID # 默认为UNKNOWN BUILD_NUMBER # 默认eng.$(USER).$(shell date +%Y%m%d.%H%M%S)的形式。 version_defaults.mk首先包含进build_id.mk。用户应当配置build_id.mk,而不应该改动version_defaults.mk文件。然后检查上述变量,如未定义则赋值默认值。---------------------------------------------------------------------------关于调试功能(adb)的开启编译android源码之前总是要先运行build/envsetup.sh,以初始化一些常用命令(实际上是bash的函数,如add_lunch_combo)。其中也从以下文件中引入了一些编译设置: device/${CHIPSET_VENDOR}/vendorsetup.sh我们这里使用的CHIPSET_VENDOR为amlogic。比如我们有文件device/amlogic/vendorsetup.sh,内容为"产品名-编译类型(flavor)"列表(称为combo),如下: add_lunch_combo m1ref-eng add_lunch_combo m1ref-user add_lunch_combo m2ref-eng add_lunch_combo m2ref-user add_lunch_combo stvm3-eng add_lunch_combo stvm3-user其中,m1ref和stvm3是产品名(作前缀),后面为编译类型。除此前缀外可选的combo值有: eng, user, userdebug, tests。(参考文件build/core/main.mk中对于变量TARGET_BUILD_VARIANT的筛查条件)我们可以修改vendorsetup.sh文件,来改变为特定设备编译的结果。以下是各个编译类型的特点: eng: 工程模式,用于平台级的调试,是默认的编译类型。

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

用最新的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源码的多仓库管理机制.下面,不妨自己动手尝试一下.

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

    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中

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

    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文件系统呢?

    阅读全文

    与如何编译安卓源码相关的资料

    热点内容
    服务器和网站开发有什么区别 浏览:762
    如何下载测试服务器 浏览:177
    怎么教育孩子的app 浏览:172
    交叉编译的输出文件 浏览:330
    手机app怎么变更办税员 浏览:936
    sql服务停用命令 浏览:912
    为什么系统要用两个云服务器 浏览:680
    两个pdf怎么合并 浏览:293
    php查询为空 浏览:589
    香港服务器丢包了怎么办 浏览:46
    linux系统管理教程 浏览:643
    共享文件夹怎么设置只读文件 浏览:295
    小米添加云服务器地址 浏览:581
    qt入门pdf 浏览:670
    视频监控取消默认加密 浏览:294
    云服务器怎么设置输入键盘 浏览:817
    单片机支持多大mhz 浏览:42
    linux启动mysql命令 浏览:792
    编程和游戏买什么笔记本 浏览:902
    程序员座位图片大全 浏览:142