[原]编译Android源码过程中遇到的问题
2015-02-07 18:17 雪夜&流星 阅读(2241) 评论(0) 编辑 收藏 举报编译Android源码的过程参考Android官网介绍:
1、下载Android源码的步骤:https://source.android.com/source/downloading.html
2、编译Android源码的步骤:https://source.android.com/source/building-running.html
下面就是我遇到的一些问题:
1、Compile Android Source时JDK相关的错误:
错误1:
target release 1.5 conflicts with default source release 1.7
解决办法:最好使用jdk为1.6.0.45的版本
错误2:
[out/target/common/obj/JAVA_LIBRARIES/core_intermediates/classes-full-debug.jar] Error 41
解决办法:jdk版本过低,将jdk版本升级到1.6.0.45
关于下载jdk 1.6.0.45参考:https://ivan-site.com/2012/05/download-oracle-java-jre-jdk-using-a-script/
2、Linux下修改通过命令行安装的jdk,使用自己安装的jdk
sudo update-alternatives --install /usr/bin/jar jar /opt/java/jdk1.6.0_45/bin/jar 60
sudo update-alternatives --install /usr/bin/java java /opt/java/jdk1.6.0_45/bin/java 60
sudo update-alternatives --install /usr/bin/javac javac /opt/java/jdk1.6.0_45/bin/javac 60
sudo update-alternatives --install /usr/bin/javap javap /opt/java/jdk1.6.0_45/bin/javap 60
sudo update-alternatives --install /usr/bin/javadoc javadoc /opt/java/jdk1.6.0_45/bin/javadoc 60
sudo update-alternatives --config jar
sudo update-alternatives --config java
sudo update-alternatives --config javac
sudo update-alternatives --config javap
sudo update-alternatives --config javadoc
当你config的时候会有如下提示:
There are 2 choices for the alternative jar (providing /usr/bin/jar).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-7-openjdk-amd64/bin/jar 1071 auto mode
* 1 /opt/java/jdk/bin/jar 60 manual mode
2 /usr/lib/jvm/java-7-openjdk-amd64/bin/jar 1071 manual mode
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-7-openjdk-amd64/bin/jar 1071 auto mode
* 1 /opt/java/jdk/bin/jar 60 manual mode
2 /usr/lib/jvm/java-7-openjdk-amd64/bin/jar 1071 manual mode
Press enter to keep the current choice[*], or type selection number:
按照提示选择你所对应的路径的number即可。
3、Ubuntu 14.04 Android 4.4.2编译出错 OSError: [Errno 2] No such file or directory
错误:
[out/target/product/generic/obj/GYP/shared_intermediates/blink/CSSValueKeywords.cpp] 错误 1
解决方法:把如下所需的系统环境都安装上重新编译即可:
git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 g++-multilib
mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386
如安装git,如下,其他也是一样,一个个安装即可。
sudo apt-get install git
最后如果出现如下输出,则表示安装成功:
Installed system fs image:out/target/product/generic/system.img
Target ram disk: out/target/product/generic/ramdisk.img
Target userdata fs image: out/target/product/generic/userdata.img
Installed file list: out/target/product/generic/installed-files.txt
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
2012-02-07 我开博的这一年