Ubuntu14.04 64位编译Android2.3源码

首先在VMWare上开一个Ubuntu14.04的虚拟机,我配置了4核心【2x2】cpu,4G内存,100G硬盘,下载的Android2.3源码普通压缩后是有大约11GB的,所以要注意预留点空间

然后安装repo工具:
    sudo apt-get install phablet-tools


安装git:
     sudo apt-get install git

设置git user.email和user.name:
    git config --global user.email "you@example.com"
    git config --global user.name "Your Name"

创建一个存放android2.3源码的目录:
    mkdir AOSP2.3

切换到工作目录:
    cd AOSP2.3

初始化repo【没条件的请选择国内的AOSP镜像】:
    repo init -u https://android.googlesource.com/platform/manifest -b android-2.3.1_r1


然后同步repo:
    repo sync


同步完成后安装jdk 6:
    sudo apt-get install openjdk-6-jdk

查看已经安装的版本:


安装gcc4.4,并设置默认gcc为4.4版本:
    sudo apt-get install gcc-4.4
    sudo apt-get install gcc-4.4-multilib
    sudo apt-get install g++-4.4
    sudo apt-get install g++-4.4-multilib
 
    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.4 40
    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 60
    sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.4 40
    sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 60
    sudo update-alternatives --config gcc
    sudo update-alternatives --config g++

安装缺失的包体:
sudo apt-get install flex bison gperf libsdl-dev libesd0-dev build-essential zip curl libswitch-perl libncurses5-dev zlib1g-dev lib32ncurses5-dev

安装完成后:
    source build/envsetup.sh
    lunch   
    make
我输入lunch回车后直接回车,选择默认的配置;尝试过make -j4,但是编译不成功,原因不详,不再深究。


遇到的问题:
    error:storage size of ‘rilm’isn't known


解决办法:
    在源码dalvik/vm/native/dalvik_system_Zygote.c文件的前面添加头部文件#include <sys/resource.h>

感谢https://zhidao.baidu.com/question/558218603.html网友提供的解决办法


最后,success:


配置环境变量:
    export PATH=$PATH:~/AOSP2.3/out/host/linux-x86/bin
    export ANDROID_PRODUCT_OUT=~/AOSP2.3/out/target/product/generic

更改out文件夹的权限:
    chmod +w -R out/

启动模拟器:
    emulator

遇到的问题:
SDL init failure, reason is: No available video device

解决办法:
sudo apt-add-repository "deb http://archive.canonical.com/ $(lsb_release -sc) partner"    
sudo apt-get update    
sudo apt-get install libsdl1.2debian:i386

感谢http://blog.csdn.net/mldxs/article/details/8757106网友提供的解决方法


总结编译环境:
    VMWare+Ubuntu14.04 64位
    repo+git+gcc4.4+openjdk6+其他工具链



参考资料:

http://blog.csdn.net/a3676212/article/details/42640639



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值