ubuntu编译安卓4.2
来源:互联网 发布:mac 标志发亮 编辑:程序博客网 时间:2024/05/01 18:10
闲得蛋疼,开始折腾一下ubuntu
一: 15.04
下载地址: http://120.198.244.55:9999/old-releases.ubuntu.com/releases/15.04/ubuntu-15.04-desktop-amd64.iso
二:分区
/Home 150G 逻辑分区Swap 2G 逻辑分区/ 48G 主分区
三:卸载openjdk,安装oracle的jkd6
1. 查看已经安装的jdksudo apt-get install rpmrpm -qa | grep jdk2. 删除
命令格式 rpm -e --nodeps penjdk版本名称
3. 安装oracle的jdk
cd /usr/libsudo mkdir jvmcd jvmsudo cp ~/develop/sw/jdk-6u45-linux-x64.bin /usr/lib/jvmsudo chmod u+x jdk-6u45-linux-x64.bin sudo ./jdk-6u45-linux-x64.bin4. 配置jdk环境变量
sudo vi /etc/profile
在文件加入内容
#set java environment
JAVA_HOME=/usr/lib/jvm/jdk1.6.0_45
JRE_HOME=$JAVA_HOME/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
注意:
ubuntu下 vi输入方向键会变成ABCD,这是ubuntu预装的是vim tiny版本,安装vim full版本即可解决。要先卸载vim-tiny:
$ sudo apt-get remove vim-common再安装vim full:
$ sudo apt-get install vim5. 使修改起效
source /etc/profile
注意:配置 /etc/profile错误 bash: export: 'xxxxxxxxxxxx': 不是有效的标识符
错误原因举例: export JAVA_HOME=/usr/lib/java 的 "="左右两边不能有空格。
6. 测试jdk
java -version
四:安装Git
sudo apt-get install git git config --global user.email "youemail@test.com" git config --global user.name "your_name"
五:安装编译需要的库
1. 更新源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
运行sudo apt-get update
运行sudo apt-get dist-upgrade
2. 安装库
sudo apt-get install gcc sudo apt-get install make sudo apt-get install perl sudo apt-get install cpio sudo apt-get install autoconf sudo apt-get install gperf sudo apt-get install flex sudo apt-get install bison sudo apt-get install patchsudo apt-get install automake sudo apt-get install g++ sudo apt-get install g++-multilibsudo apt-get install lzop sudo apt-get install libxml2-utils sudo apt-get install zlib1g-dev sudo apt-get install libswitch-perl sudo apt-get install u-boot-tools sudo apt-get install xsltproc sudo apt-get install busybox#sudo apt-get install ncurses-develsudo apt-get install libncurses5-dev#其他sudo apt-get install gnupgsudo apt-get install perfsudo apt-get install build-essentialsudo apt-get install zipsudo apt-get install curlsudo apt-get install libc6-devsudo apt-get install x11proto-core-devsudo apt-get install libx11-dev:i386sudo apt-get install libreadline6-dev:i386sudo apt-get install libgl1-mesa-glx:i386sudo apt-get install libgl1-mesa-devsudo apt-get install mingw32sudo apt-get install tofrodossudo apt-get install python-markdown
注意:
1)无法安装perf
sudo apt-get install linux-tools-common
sudo apt-get install linux-tools-3.19.0-15-generic
2)无法安装 mingw32
sudo vi /etc/apt/sources.list
//在sources.list末尾添加,保存
deb http://us.archive.ubuntu.com/ubuntu trusty main universe
sudo apt-get update
sudo apt-get install mingw32
3) 创建libGL.so.1的一个软连接libGL.so (orange pi android 编译)
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
六:编译源码
1. 假设android4.2的源码放在 ~/develop/android_source/4.2 下面,切换到该目录
cd ~/develop/android_source/4.2
2. 初始化编译环境
source build/envsetup.sh
3. 查看编译选项
lunch4. 或者直接选择一个编译目标(选择平台编译选项)
lunch full-eng5. 执行make语句开始编译
make -j2说明:j2后面的数字是你要使用的线程数,看你电脑具体配置,CPU配置越好,能使用的线程越多,编译就越快
6.问题
问题1: xxxxxxxxxxxxxxxxxxxxxxx: 权限不够
解决:chmod 777 文件名称
问题2:编译4.2,提示: You are using version 4.0 of make Android can only be build by version 3.8.1 and 3.8.2
cd buldcd corecp main.mk main.mk.bakvi main.mk:set number大约50行的$(error stopping)注释掉
问题3:error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory
apt-get install lib32ncurses5 ia32-libs问题4:error while loading shared libraries: libstdc++.so.6: wrong ELF class: ELFCLASS64
sudo apt-get install lib32ncurses5 lib32stdc++6
- ubuntu编译安卓4.2
- ubuntu编译安卓5.0源码小记
- ubuntu 安卓源码编译环境搭建
- Ubuntu下编译安卓源码
- ubuntu 14.04 下编译安卓5.0.2源码
- 安卓源码编译
- 安卓编译错误
- 安卓编译工具
- 安卓源码编译
- 编译安卓源码
- 安卓编译出错
- 安卓编译流程
- ubuntu编译安卓内核时arm-eabi-gcc :命令未找到的解决方法
- 64位Ubuntu Kylin14下编译安卓2.3.3过程记录
- Webrtc 系列之一: ubuntu 下webrtc的环境搭建 和编译为安卓APK
- Ubuntu下将编译好的安卓源代码刷入Nexus5真机
- VMware fusion下ubuntu(16)虚拟机编译安卓源码笔记
- 建立安卓编译环境
- 【Caffe的C++接口使用说明四)】Caffe中分类C++接口Demo源代码的解析
- 编程第五十七天
- 内网渗透之如何玩转Meterpreter?
- 从LINQ开始之LINQ to Objects(下)
- python的numpy学习教程
- ubuntu编译安卓4.2
- meterpreter 持久化访问的多种方式
- HDU-4549(矩阵快速幂+欧拉定理)
- Android第一开发语言—初探Kotlin
- Mac mysql 被 kill 后仍旧不断重启的解决办法
- 编程第五十八、五十九天
- 如何让浮动的元素垂直居中
- 多线程-多线程方式1的代码实现
- 读取硬件信息