Android源码编译SDK

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Q1302182594/article/details/52150662

1 源码下载

    由于无法直接从Google官网下载Android源码,因此只能从其它途径获取,例如高通开源网就是一个不错的选择。本文在高通开源网上下载Release分支中包含msm8909平台的源码,其中Android版本为6.0.1,本文将源码目录命名为为android-msm8909。

    本文实验环境为Ubuntu14.04(64bit)

2 编译方法一

2.1 编译步骤

1)进入android-msm8909目录;

cd android-msm8909

2)设置编译环境:

source build/envsetup.sh
3)设定编译目标

lunch sdk-eng

lunch sdk-userdebug

lunch sdk-user
    下图是lunch sdk-eng的结果:

    

4)开始编译

make -j4 sdk

2.2 注意事项

(1)关于lunch sdk-eng

    根据参考资料[3]的提示,输入lunch命令查询当前支持的配置时,是没有sdk-eng选项的:

    此时,若选择上图中的任意一个选项,然后执行make sdk,则最后会出现以下错误:


    因此,在步骤3)中,必须使用lunch sdk_eng,虽然没有被列出来,但是支持!

(2)需要先编译整体

    在编译sdk之前,需要先编译整体:

lunch 27
make -j4

    然后再编译sdk

lunch sdk-eng
make -j4 sdk 

    否则会出现以下错误:


3 编译方法二

3.1 编译步骤

1)进入android-msm8909目录

cd android-msm8909
2)启动编译

make -j4 PRODUCT-sdk-sdk
3.2 注意事项

    1)采用这种方法,不需要通过lunch sdk-eng选择编译目标;

参考资料

[1]How to build my own Android SDK

[2]编译Android模拟器(make sdk),以及错误处理

[3]编译Android 4.0 ICS,报错couldn't locate source file: framework/layoutlib-tests.jar

[4]安装ADT 后Android SDK manager and AVD Manager 功能选项变成 Android SDK manager和AVD Manager两个功能

[5]Android SDK 源代码编译

[6]Building Android: No Rule to make target

[7]make sdk error in ICS

展开阅读全文

没有更多推荐了,返回首页