AOSP的编译


aosp现在使用soong编译工具进行编译了,比之前的老版本编译要容易方便得多了.

步骤

  1. 配置好repo等工具
  2. 下载aosp源码
  3. 开始编译
  4. 模拟器演示或者刷写到真实设备上

其实这几个步骤都没什么好说的.第一二步按照要求下载工具和源码即可,当然最好有一个科学上网的环境,不行的化用清华的镜像源也是可以的.

查看分支/切换分支

在已经下载好源码之后:

  • 查看分支

    cd .repo/manifests
    git branch -a | cut -d / -f 3
  • 切换分支

    repo checkout xx_branch

重置修改的代码

repo forall -c git reset --hard

编译

进入源码根目录,然后执行:

. build/envsetup.sh
lunch

这一步会让你选择构建的Android系统类型

m droid

大概需要编译10万个C/C++文件,耗时1~4个小时.

编译时可能出现的问题

  1. 大小写敏感的磁盘格式问题

    Android官方文档有格式化的办法构建编译环境

  2. too many files

    我用的是MacOS,出现这种问题是因为系统对打开的文件个数有限制.

    可以在环境变量中设置最大打开文件的个数(.bash_profile,或者.zshrc之类的):

    # set the number of open files to be 1024
    ulimit -S -n 2048

文章作者: 姜康
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 姜康 !
评论
 上一篇
ARM架构基础知识 ARM架构基础知识
Architecture 中文可以是体系结构,也可以是架构,我这里用架构 一些专业术语可以在本科课程/书籍《计算机体系结构》中找到. 三种配置 A-Profile(Applications) 性能最高,用于运行复杂的操作系统,比如Lin
2020-06-12
下一篇 
Android开机动画分析 Android开机动画分析
开机动画系统会按照下面的顺序选择一个开机动画资源(一个zip文件,比如bootanimation.zip): /system/media/bootanimation-encrypted.zip (if getprop("vold.
2020-06-12
  目录