Ubuntu15.04 下编译Android4.2.2的问题总结

来源:互联网 发布:大数据对贵州的影响 编辑:程序博客网 时间:2024/05/18 03:01

编译之前我就预感会遇到很多问题, 第一次编译源码,所遇到的问题实在太多了,记录下问题.方便日后参考.

 一 .下载源码:
      地址:https://source.android.com/source/downloading.html 
      (注:由于被天朝墙,自己买个vpn,4.2的源码压缩包:12G)
     系统:ubuntu 15.04(64位)
      (注: 官方文档是要求android ubuntu 64位的系统. 所以我很早就安装了64位)
二.问题列表
      问题1: 
          Android can only be built by versions 3.81 and 3.82
       ( 我的make 命令 版本过高. 因为我是用ubuntu 15.04 最新版本的,建议用14.04的 文档多)
      解决: 
          下载地址:ftp://ftp.gnu.org/gnu/make/  (在 gnu 官网下载源码)
           make 3.8.1 的安装步骤:
           tar   -zxvf   make3.8.1.tar.gz    (解压)
           然后  cd  到 make3.8.1目录下
           执行   ./configure   (配置)
           make   (编译)
           make install  (安装)
           在make3.8.1 目录下 会出现 make 这个编译好的 命令
            ./make -version   (GNU Make 3.81 )
           cp make  /usr/bin/make (把刚刚编译好的make 把系统的覆盖)
           make -version(GNU Make 3.81)    
      问题2: 
            You are attempting to build with the incorrect version of java
            The correct version is: 1.6.
       解决:
            注意:编译要求使用1.6的JDK版本。不能使用1.7等其他版本。
            1.去官网找了很久,没找到1.6的下载地址.
            下载地址:http://download.csdn.net/detail/prefectjava/7038111
            进入jdk1.6.0_45所在目录
            sudo  chmod +x 1.6.0_45.bin (赋予该bin文件可执行属性)
            ./jdk1.6.0_45.bin
            执行 gedit ~/.bashrc   打开  .bashrc文件。
            修改./bashrc文件,在文件末尾添加
            #set java environment 
            JAVA_HOME=“你的路径”/jdk1.6.0_45 
            export JRE_HOME=“你的路径”/jdk1.6.0_45/jre 
            export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH 
            export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH 
            在终端执行source ~/.bashrc刷新该配置
            java -version  ( java version "1.6.0_45")
       问题 3:
             Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar
             The correct version is: 1.6.
       解决:
             不知道是不是只有ubuntu 15.04 版本的问题.但是还是可以解决的
             gedit ~/.bashrc
             在头部加上
             #unset
             unset JAVA_TOOL_OPTIONS
             source ~/.bashrc


       问题4:
             /bin/bash: bison: command not found 
       解决:
             sudo apt-get install bison


      问题5:
           /bin/bash: xsltproc: command not found
      解决:
            sudo apt-get install  xsltproc

     问题6:
          make **             [out/target/product/tiny4412/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/bindings/V8CSSCharsetRule.h] Error 

    解决:
         1、进入/usr/bin
         $ ls -l gcc* 查看gcc当前连接版本
         $ rm gcc 删除gcc连接
         同理
         $ ls -l g++*
         $ rm g++
         2、降级到4.4.7版本
         $ sudo apt-get install gcc-4.4
         $ sudo apt-get install g++-4.4
         $ sudo apt-get install g++-4.4-multilib     //64位
         $ sudo apt-get install gcc-4.4-multilib    
         ln -s gcc-4.4 gcc

         ln -s g++4.4 g++         

     问题7:
        make: ***[out/host/linux-x86/obj/EXECUTABLES/emulator_intermediates/android/skin/window.o] Error 1
    解决:

        $ sudo apt-get install libx11-dev


       

0 0