您的位置:首页 > 移动开发 > Android开发

Android编译系统使用杂解

2011-10-31 10:47 375 查看
感觉android编译系统纷繁复杂,有必要做个整理

个人觉得编译出来的东西大致分为三类

1. 设备需要的img.

   设备可以是手机,pad等等具体的设备,也可是android emulator。编译时,我们需要知道此设备运行在哪个架构上,哪个OS上

  涉及到的编译命令:

  make, build/envsetup.sh, m,mm,mmm等等

2. 提供给应用层开发的sdk

  不要把sdk与模拟器混为一谈,sdk开发出来的东西既可以在模拟器上跑,也可以在真机上跑,而模拟器所需要的img,则是第一类编译出来的。

  涉及到的编译命令:

  make sdk(make时不会生成sdk) 

3. 其它杂项,比如make doc

对应这三类东东,最终配置会体现在以下文件中

build/core/config.mk         summary of config 

  config.mk包含了根目录下的buildspec.mk,它配置了以下这些西西

  PLATFORM_VERSION_CODENAME=REL

PLATFORM_VERSION=2.2

TARGET_PRODUCT=sim

TARGET_BUILD_VARIANT=user

TARGET_SIMULATOR=true

TARGET_BUILD_TYPE=release

TARGET_BUILD_APPS=

TARGET_ARCH=x86

HOST_ARCH=x86

HOST_OS=linux

HOST_BUILD_TYPE=release

BUILD_ID=FRF91

   所以如果是想对上面这堆进行配置,个人觉得可以统一在buildspec.mk修改。

    build/core/envsetup.mk    generate dir config and so on  build/target/product         product config  

  最终产品特性,比如有哪些APP?build/target/board            board config  

  硬件配置?maybe

build/core/combo              build flags config 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息