android-5.1编译配置(van)
必备文件:
archives1211.tgz
ubuntu_install_1204.tgz 安装指引:
ubuntu_install_1204/readme.txt 工作目录结构:
git
├── vanzo_team vanzo:tools/vanzo_team.git
└── vanzo_team2 vanzo:tools/vanzo_team2.git
git2
├── vanzo_team vanzo2:tools/vanzo_team.git
└── vanzo_team2 vanzo2:tools/vanzo_team2.git
build_projects vanzo:tools/build_projects.git
build_projects2 vanzo2:tools/build_projects2.git 其他注意事项:
因为新的编译脚本频繁调用vanzo_team*的公共库文件,代码里面采用了直接引用的方式,
所以需要本地环境定制python的library path:
~/git2/vanzo_team/songlixin/config/ln.sh
脚本
am编译脚本核心内容:
zprojects/scripts/mk.sh
11 source zprojects/$project_name/$project_name.env
12 source build/envsetup.sh
18 lunch full_$VANZO_INNER_BOARD_PROJECT_BY_NAME_VALUE-user
23 make -j32
所以想要实现编译快速迭代,可以手动source env文件和envsetup.sh文件,然后按照标准android编译即可。
编译
ccache
ccache对编译速度影响的试验(基于6735 n325b-ubtel):
ccache不打开时完整编译:#### make completed successfully (01:57:30 (hh:mm:ss)) ####
ccache打开后第二次编译:#### make completed successfully (01:23:19 (hh:mm:ss)) #### (此时.ccache目录870MB)
ccache增大容量后第二次编译:#### make completed successfully (37:05 (mm:ss)) #### (此时.ccache目录17GB) ccache安装及增容命令: sudo apt-get install ccache; ccache -M 50G; (ccache默认最大cache为1GB,远远不够)
编译命令
repo init -u vanzo2:platform_lp1_6735m/manifest.git -m vtrunk.xml
repo sync -j32
repo start work --all
ln -s ~/build_projects2/prebuilts-51-64bit prebuilts
nohup ./am n320a-kewei-35m -d // eng版本.如果要user版本,把'-d'参数去掉即可;nohup为不输出log,直接保存在nohup.out文件中
JDK版本需求
4.4: OracleJDK6
5.0: OpenJDK7
可以同时安装,所以一台机器既可以编译4.4也可以编译5.0, 通过update-alternatives切换即可.
(详见老宋脚本git/vanzo_team/songlixin/ubuntu_install_1204/local_install_jre64.sh)
(也可以使用"refactor 155 0"和"refactor 155 1"进行java版本切换)
调试
selinux
android 5.0默认启用selinux,权限控制严格很多.
如果碰到诸如:
E/SELinux ( 127): avc: denied { add } for service=themes.add scontext=u:r:shell:s0 tcontext=u:object_r:default_android_service:s0 tclass=service_manager
E/ServiceManager( 127): add_service('themes.add',60) uid=1000 - PERMISSION DENIED
或是:
W/FileUtils( 681): Failed to chmod(/data/resource-cache): android.system.ErrnoException: chmod failed: EACCES (Permission denied)
的错误,可以从selinux着手去调查.
具体selinux配置在源码'external/sepolicy'目录,但我们的修改一般会overlay,放在'device/mediatek/common/sepolicy'目录.
android-5.1编译配置(van)的更多相关文章
- Ubuntu 12.04 64bit 配置完android 5.0编译环境后出现“could not write bytes: Broken pipe.”而无法进入输入帐号密码的登陆界面
Ubuntu 12.04 64bit 配置完android 5.0编译环境后出现“could not write bytes: Broken pipe.”而无法进入输入帐号密码的登陆界面.上网问了问百 ...
- 安装ubuntu16虚拟机,下载android源码,配置编译环境
Android 源码编译步骤: 我考虑了一下,目前电脑装了SSD,8G内存,使用虚拟机编译源码应该够用. 首先下载虚拟机软件,由于最近一直在使用virtualbox,感觉蛮不错了,下载地址: http ...
- Android 秒级编译 Freeline
http://mp.weixin.qq.com/s?__biz=MzA4NTQwNDcyMA==&mid=2650662410&idx=1&sn=c654fa7b0cc8c91 ...
- Android studio 加速编译方法
JRebel for Android 是一个Android Studio的插件,可以大大加速Android Studio的编译速度,对于小项目来说或许不明显:但是当项目达到一定的规模时,它对于Andr ...
- android NDk环境编译总结
首先,这篇文章的撰写是基于很多前人的优秀的帖子,感谢他们的分享让我能够学习这么多的知识.谢谢 Android NDK开发环境的搭建 前言: Android 上,应用程序的开发,大部分基于 Java 语 ...
- Android源码编译的全过程记录
写本篇文章主要参考了官方文档和网上的一些资料,但是对于Android最新的代码来说,网上资料有些已经过时.本文中步骤已经作者实验,大家可以亲自执行试试.由于没有使用Eclipse的习惯,所以没有做Ec ...
- 【转】Android 源码编译make的错误处理--不错
原文网址:http://blog.csdn.net/ithomer/article/details/6977386 Android源码下载:官方下载 或参考android源码下载方式 Android编 ...
- android.mk android源码编译
http://www.cnblogs.com/chenbin7/archive/2013/01/05/2846863.html Android.mk简单分析 2013-01-05 22:51 by . ...
- Android 环境下编译FFmpeg
Android 环境下编译FFmpeg 开发环境:Ubuntu 12.04.2 LTS , android-sdk-linux, android-ndk-r8e 一 .X264 编译 1. X2 ...
- 分析cocos2d-x在Android上的编译过程(1):cocco2d-x是怎样生成的Android的文件夹结构
当新建完一个cocos2d-x的项目后.进入到项目中的proj.android中,会看到例如以下的文件夹结构 在VS先把它编译,然后导入到Eclipse中,导入完后会看到多了几个文件 watermar ...
随机推荐
- POSTGRESQL NO TABLE
POSTGRESQL EXTENDING SQL GRIGGER PROCEDURAL
- 浅谈 C 语言中模块化设计的范式
今天继续谈模块化的问题.这个想慢慢写成个系列,但是不一定连续写.基本是想起来了,就整理点思路出来.主要还是为以后集中整理做点铺垫. 我们都知道,层次分明的代码最容易维护.你可以轻易的换掉某个层次上的某 ...
- AIX 压缩与归档
.tar.Z 格式 压缩: compress filename.tar 解压: zcat filename.tar.Z tar -xvf - .tar.gz 格式 压缩:t ...
- CentOS 源设置
安装完CentOS后,系统默认的源可能有限满,这时我们需要添加国内比较好的源. 一.国内比较好的源https://opsx.alibaba.com/mirror #阿 ...
- cogs 1456. [UVa 10881,Piotr's Ants]蚂蚁
1456. [UVa 10881,Piotr's Ants]蚂蚁 ★ 输入文件:Ants.in 输出文件:Ants.out 简单对比时间限制:1 s 内存限制:128 MB [题目描述 ...
- boost::asio与ACE的对比
http://blog.163.com/miky_sun/blog/static/3369405201041753652505/
- Viewpager切换时pager页面的生命周期变化
总结1: 当我们把ViewPager和Fragment合用的时候,切换页面时生命周期会发生对应的变化.变化规律:载入当前页面.前一个页面和后一个页面.我们来看一个实际測试效果图 打开应用会载入第一个页 ...
- java.lang.IllegalArgumentException: The observer is null.终于解决方式
java.lang.IllegalArgumentException: The observer is null.终于解决方式 在使用数据适配的时候的问题: java.lang.IllegalArgu ...
- 关于TabLayout+ViewPager组合实现多页面滑动
转载请注明出处:http://blog.csdn.net/ht_android/article/details/46647711 在android提供的design library中新增了一个控件,叫 ...
- linux的vi或vim文件时,怎样消除刚才查找字符串的高亮?
有时候,自己在通过/查找字符串时,会出现: 但是呢,当你保存,再次进入还是会出现这么花的高亮显示,很令人苦恼. 解决办法 随便,输入没有的字符串,即可解决. 如下 /sssssssssssssssss ...