Ubuntu12.04实现Android 4.0开发环境搭建及源码编译

Android 4.0开发环境搭建及源码编译

移植方式:

准备工作:

  • 建议60GB以上本地磁盘
  • 良好的网络,充足的时间与耐心,安装顺利大约需要5-10小时
  • 下载所有软件安装包
    链接:百度网盘
    提取码:1234

参考步骤:

  1. 安装VMware Workstation pro

  2. 安装ubuntu-12.04-desktop-amd64

  3. Ubuntu12.04更换镜像源 可参考我的一篇换源文章Ubuntu12.04更换镜像源与valgrind3.2.0的安装

  4. gcc、g++降版本 可参考我的另一篇降版本文章Ubuntu12.04降低gcc,g++版本为4.4x

  5. 通过共享内存的方式把aosp目录拷入到Ubuntu
    路径为:/home/linux

    在这里插入图片描述
    完成后文件夹的内容为:

    注意:
    这里要通过共享内存的方式可以看我的一篇文章Ubuntu12.04开启共享内存
    Ubuntu12.04中的home文件夹权限问题,可输入以下命令修改home文件权限

    sudo su root
    //进入文件系统下
    chmod 777 home
    

    即可将aosp目录成功拷入

  6. 进入aosp目录,打开命令窗口输入命令
    在这里插入图片描述
    注意:这里没有在终端中打开选项可通过下面命令获得

    sudo apt-get install nautilus-open-terminal
    

    然后单击右键就可以看到打开终端的选项,如果没有则需要重新启动系统

    输入下面命令

    sudo ./jdk-6u29-linux-x64.bin 
    //会生成 jdk1.6.0_29
    sudo gedit /etc/profile
    //并把profile_append中的内容追加到文件后面,并使配置生效
    source /etc/profile
    

    用于配置环境变量,aosp在/home/linux目录下无需修改
    在这里插入图片描述
    在这里插入图片描述
    接下来输入以下命令

    javac -version
    

    如果能显示版本号说明JDK安装成功

  7. 安装编译依赖工具包

    sudo apt-get install bison
    sudo apt-get install flex
    sudo apt-get install apt-file
    sudo apt-file update
    sudo apt-get install lib32z1
    sudo apt-get install gperf
    sudo apt-get install zlib1g-dev
    sudo apt-get install liblzma-dev
    sudo apt-get install ia32-libs
    sudo apt-get install lib32stdc++6
    sudo apt-get install g++-multilib
    //做完这一步需要查看gcc、g++版本,如果显示版本为4.6x需要重复降版本操作!	直至显示4.4x为止
    sudo apt-get install zlib1g-dev
    sudo apt-get install lib32z-dev
    sudo apt-get install lib32ncurses5-dev
    sudo apt-get install build-essential
    sudo apt-get install libx11-dev
    sudo apt-get install libgl1-mesa-dev
    sudo apt-get install libglu1-mesa-dev
    sudo apt-get install git
    sudo apt-get install git-core
    sudo apt-get install python-markdown
    sudo apt-get install yum
    sudo apt-get install libv4l-dev 
    sudo ln -s /usr/include/libv4l1-videodev.h
    sudo ln -s /usr/include/linux/videodev.h
    

    注意:这里会安装依赖的工具包,一定要在换源的前提下进行,每输入一条指令,就需要点击y一次,需要等待安装,比较耗时,请有耐心仔细输入完成,否则缺少会导致后面编译出错。

  8. 解压aosp目录下的安装包
    输入以下指令

    //为了缩小内存空间,使用了双压缩包
    //aosp4r.rar->asop4r.tar(改名)->aosp4r.tar1->aosp4r.tar(改名/4.26G)
    //上文网盘内该文件已经为aosp4r.tar(4.26G)可直接解压使用
    tar xvf aosp4r.tar
    tar xvf goldfish2629.tar
    tar xvf sdk14.tar
    tar xvf eclipse.tar
    
  9. 在当前目录下:/home/linux/aosp输入命令

    sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
    sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so
    
  10. 进入目录goldfish_2.6.29,运行脚本build_kernel.sh
    在终端中打开,输入以下命令

    ./build_kernel.sh
    
  11. 返回上一级,现进入目录aosp:/home/linux/aops/aosp运行

    在终端中打开,输入以下命令

    source ./build/envsetup.sh
    lunch 1
    make -j4
    

    注意!注意!注意!
    这一步很耗时间,可能要4个小时而且编译可能出现错误,在make -j4报错error时,按我的另外一篇文章Ubuntu12.04实现Android 4.0源码编译错误解决方法输入命令解决即可,然后继续输入make -j4继续上次的编译步骤,尽量不要make clean,否则会花费很多时间!

    查看编译生成的文件
    在这里插入图片描述
    在这里插入图片描述
    注意:
    当 lunch 1时 直接生成generic文件即可进行下一步操作。
    当 lunch 2时 第一次编译会生成generic_x86
    此时需要重启虚拟机,删除generic_x86再次重复make -j4操作即可生成generic文件

  12. 创建模拟器

    进入/home/linux/aosp/android-sdk-linux/tool目录
    在这里插入图片描述
    在终端中打开,输入以下命令

    ./android create avd -n MyPhone -t 1
    //Do you wish to create a custom hardware profile [no]
    //这里输入n
    ./emulator -avd MyPhone&
    
  13. 运行脚本run_emulator.sh
    在/home/linux/aosp目录中输入指令

    ./run_emulator.sh
    

    祝大家成功!
    在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值