Android的学习——ubuntu下android5.1源码的make编译
在repo sync下载源码后,经历了漫长的时间,终于可以进行下一步了。
在进行make之前还需要三个步骤。
1> source build/envsetup.sh:加载命令
2> lunch:选择平台编译选项
3> make:执行编译
一、
将envsetup.sh里的命令加载到环境变量中,完成一些初始化。
二、
如使用32位的ubuntu系统和Android4.几(具体不记得是第几版,0还是01),在执行lunch命令时会出错。当然这些错误可以在32位系统进行修改后,也可执行该命令,但是过程较麻烦。我之前就装的是32位的,花费了很多时间,多少还是有些小问题,最终还是改用64位的,所以建议还是安装64位的ubuntu系统。
三、
make -j4(根据个人电脑情况)
这是一个漫长的过程,会出现各种错误的情况。个人不建议使用make -k,因为错误情况都会忽略,而花费了很长时间编译后,还是不成功的。还是得重新回来找错误,解决它。
错误一:
Traceback (most recent call last):
File "scripts/make_css_property_names.py", line 238, in <module>
in_generator.Maker(CSSPropertiesWriter).main(sys.argv)
File "/root/Android_src/external/chromium_org/third_party/WebKit/Source/core/scripts/in_generator.py", line 119, in main
writer.write_files(options.output_dir)
File "/root/Android_src/external/chromium_org/third_party/WebKit/Source/core/scripts/in_generator.py", line 77, in write_files
self._write_file(output_dir, generator(), file_name)
File "scripts/make_css_property_names.py", line 233, in generate_implementation
gperf = subprocess.Popen(gperf_args, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
File "/usr/lib/python2.7/subprocess.py", line 709, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1326, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
make: *** [out/target/product/generic/obj/GYP/shared_intermediates/blink/CSSPropertyNames.cpp] 错误 1
make: *** 正在等待未完成的任务....
解决:
确保已安装以下环境:
git gnupg flex bison gperf build-essential zip curl libc6-dev x11proto-core-dev g++-multilib tofrodos python-markdown libxml2-utils xsltproc
错误二:
ubuntu14.10上编译android5源码到libwebviewchromium.so后停止
解决:
参考http://jileniao.net/ubunt-add-swap-to-build-libwebviewchromium.html
错误三:
出现: java,javac:无效的目标版本 类似情况
解决:
javac的环境没设置好,或是javac没有安装好。
sudo update-alternatives --config java
sudo update-alternatives --config javac
查看当前使用的jdk,如有问题,请重新设置,切换java或重新下载jdk,再设置以下。
sudo update-alternatives --install /usr/bin/java java /usr/....(自己jdk所放的位置)/java 1051
sudo update-alternatives --install /usr/bin/javac javac /usr/....(自己jdk所放的位置)/javac 1051
其他错误,可以参考http://www.cnblogs.com/tao560532/p/3302444.html
Android的学习——ubuntu下android5.1源码的make编译的更多相关文章
- Android5.1源码Xposed框架编译
介绍 Xposed框架是一款可以在不修改APK的情况下影响程序运行(修改系统)的框架服务,基于它可以制作出许多功能强大的模块,且在功能不冲突的情况下同时运作 . 对于Android5.1系统,官方提供 ...
- ubuntu下linux内核源码阅读工具和调试方法总结
http://blog.chinaunix.net/uid-20940095-id-66148.html 一 linux内核源码阅读工具 windows下当然首选source insight, 但是l ...
- Ubuntu下获取内核源码
查看当前系统使用的内核版本: apt-cache search linux-source 输出如下: linux-source - Linux kernel source with Ubuntu pa ...
- linux下获取软件源码包 centos/redhat, debian/ubuntu
linux下获取软件源码包 centos/redhat, debian/ubuntu centos下: 1. yum install yum-utils 主要为了获取yumdownloader 2. ...
- Ubuntu 下载 & 编译 Android5.1 源码
ustc & tsinghua android srchttps://lug.ustc.edu.cn/wiki/mirrors/help/aosphttps://mirrors.tuna.ts ...
- 【Android 系统开发】CyanogenMod 13.0 源码下载 编译 ROM 制作 ( 手机平台 : 小米4 | 编译平台 : Ubuntu 14.04 LTS 虚拟机)
分类: Android 系统开发(5) 作者同类文章X 版权声明:本文为博主原创文章 ...
- 比特币学习笔记(二)---在windows下调试比特币源码
根据我一贯的学习经验,学习开源代码的话,单单看是不够的,必须一边看一边调试才能尽快理解,所以我们要想法搭建windows下bitcoin源码的调试环境. 紧接着昨天的进度,想要调试linux下的比特币 ...
- Ubuntu下STL源码文件路径+VS2010下查看STL源码
Ubuntu版本信息 然后STL源码位置就在 /usr/include/c++/7/bits /usr/include/c++/7.4.9/bits 这两个文件下都有 然后我日常写程序用的Window ...
- 编译android5.0源码的
java环境 Android 5.1 用到的jdk不再是Oracle 的 jdk ,而是开源的 openjdk,在ubuntu安装好后,使用如下命令安装jdk: $sudo apt-get insta ...
随机推荐
- jsp通过jQuery返回json数据到页面
1.首先要导入json的包,自己去网站找,总共6个jar包! 2. 在servlet里的写法(仅共参考) JSONObject json = new JSONObject(); String a = ...
- :enabled 匹配所有可用元素
描述: 查找所有可用的input元素 HTML 代码: <form> <input name="email" disabled="disabled&qu ...
- DirectUI 收集资料
1.[ZsUI]一步一步写个DirectUI.[连载贴] (http://tieba.baidu.com/p/1625954225) ps: 虽然是vb写的,也很简陋,不过有代码,并且作者每节都给出了 ...
- DNS Prefetch
DNS 实现域名到IP的映射.通过域名访问站点,每次请求都要做DNS解析.目前每次DNS解析,通常在200ms以下.针对DNS解析耗时问题,一些浏览器通过DNS Prefetch 来提高访问的流畅性. ...
- 结对编程—黄金点游戏WinForm单机版
本小游戏场景来自邹欣老师的<移山之道>一书: "阿超的课都是下午两点钟,这时班上不少的同学都昏昏欲睡,为了让大家兴奋起来,阿超让同学玩一个叫"黄金点"的游戏: ...
- 【Linux命令与工具】系统资源查看——free、uname、dmesg以及netstat
free:查看内存的使用情况 用法: free [-b|-k|-m|-g] [-t] 参数: -b: 直接输入free时,显示的单位是KB我们可以使用b(bytes), m(MB), k(KB), g ...
- php: 学习记录
1.get_object_vars($obj) 获取对象$obj的属性数组 2.类和对象 <?php // 类和对象 echo "类和对象" . "\n" ...
- My97日期控件 选择日期区间
<script language="javascript" type="text/javascript" src="My97DatePicker ...
- java易错基础知识点
一. Switch 1.其能接受的数据类型有四个,char , byte, short, int2.Default 可放在switch中的任何一个地方,但只有给定的条件匹配不到时,才会执行3.Case ...
- 使用 InstallShield 制作 Delphi 软件安装包
软件版本: InstallShield 12 Delphi 5/7 SQL Server 2005 一.配置软件信息 二.软件安装的需求配置 三.安装架构 四.安装需要的文件 软件的安装路径.可执行文 ...