android 源码用什么编译器源码

若不修改这里编译源码的时候會出现错误,修改的目的是为了把CLANG这个编译选项关掉不会影响源码编译。

提高编译效率设置编译器源码高速缓存:

导入编译Android源码所需的環境变量和其它参数:
//source是点符号另一种写法,可以强制执行shell无视权限,重新执行刚修改的初始化文件 如 bash_profile 等

lunch命令选择目标

如果是虚拟机安裝勾选虚拟化Intel VT-x项


导入编译Android源码所需的环境变量和其它参数:

lunch命令选择目标,由于我编译的版本是aosp_x86-eng所以选择5

生成针对 Android 开发工具的配置文件

在執行完上述指令后,会在源码路径下生成下面三个文件
android.ipr:工程相关的设置比如编译器源码配置、入口,相关的libraries等
android.iws:包含了一些个人工莋区的设置。

除了通过make命令编译整个系统外还可以通过下列命令进行分模块编译

编译成功,生成文件路径如下


进入appt目录输入mm命令,开始编译


设置增加 Jack 的内存容量来解决这个问题

然后进入到输出路径的 bin 目录下:

执行下面的指令重启 Jack 服务

编译百分之一的时候报的错误bison 没有安裝。


如果你认真看了构建环境的的要求,那么这个错误是可以避免的.当然,这个问题也很容易解决:安装openjdk 8,别忘了使用sudo update-alternative命令切换jdk版本.
这个错误比较瑺见,尤其是在编译AOSP主线代码时,常常会因为JVM heap size太小而导致该错误.

在控制台执行以下命令:

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

注意:在编译SDK的时候同样可能出现因jvm heap size太小而导致编译错误,一旦出现用以上任何一种方案都可以解决.

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

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

Out of memory error.具体错误该错误和第二条本质一样,尤其是你在进行编译Android 8.*版本时更容易遇到该问题其表现如下:

无论表现是什么,但错误的本质还是Java heap space 当然,其解决该问题的方式和之前的第二条解决方案一样内存值尽量设置大一些


}

北邮在线成立于2009年是由北京邮電大学、...| 总评分0.0| | 浏览量0


}

我要回帖

更多关于 编译器源码 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信