本帖最后由 stoat 于 2010-07-04 15:59:55 编辑

解决方案 »

  1.   

    同问,我的也遇到一样的问题。
    补充一下,是用Vmware安装的Ubuntu 10.04,JDK6
      

  2.   

    我的是  Ubuntu 10.04,JDK 1.6.0_22
    最新拉的代码,说不能用JDK1.5了
      

  3.   

    有配置对正确的安装环境么?
    请检查下下面的库吧
    $ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl sun-java5-jdk zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev
      

  4.   

    特别是libc6-dev-i386 gcc-multilib
      

  5.   

    非常感谢yyy025025025!-------------------------------------------------------------------------
    装了gcc-multilib,然后make,原来的错误没有了,但出现如下错误
    /usr/bin/ld: cannot find -lstdc++再g++-multilib后make,又变为如下错误
    /usr/bin/ld: cannot find -lz--------------------------------------------------------------------------
    上面要装的库,有几个用apt-get找不到:
    E: Couldn't find package lib32z-dev
    E: Couldn't find package lib32readlin5-dev
    E: Couldn't find package ia32-libs
    E: Couldn't find package libc6-dev-i386
      

  6.   

    sudo apt-get install lib32z1-dev或者lib64z1-dev
      

  7.   

    尝试将9.10或者更老一点版本的source加入到当前的source list,然后再次安装试试。基本上的问题就是编译环境没有配置好。
      

  8.   

    看了楼上yyy025025025兄弟支招,我觉得他可能忽视了你的OS是32位的前提,根据http://source.android.com/source/download.html,给出的指引,你需要Ubuntu Linux (32-bit x86):
    sudo apt-get install git-core gnupg sun-java5-jdk flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev Ubuntu Linux (64-bit x86):
    sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl sun-java5-jdk zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev
    言归正传,你的OS是x86,为什么会遇到__x86_64__呢?从源码入可以找到答案,查看platform/external/clearsilver.git 上的一个修改:Fix 64-bit clearsilver shared library issue:http://android.git.kernel.org/?p=platform/external/clearsilver.git;a=commit;h=d36910a8110d8377b22301274d2b5131a732a72b这次修改当中,Android.mk 做了如下修改:+# This forces a 64-bit build for Java6
    +ifneq ($(filter 1.6%,$(java_version)),)
    +    LOCAL_CFLAGS += -m64
    +    LOCAL_LDFLAGS += -m64
    +endif当发现你使用Java6时,它将强制使用64-bit,这大概是__x86_64__出现的原因。要解决gnu/stubs-64.h: No such file or directory,需:
    apt-get install libc6-dev-amd64要解决/usr/bin/ld: cannot find -lstdc++,需:
    apt-get install g++-multilib lib64stdc++6 要解决/usr/bin/ld: cannot find -lz,需
    apt-get install lib64z1-dev可参考http://www.poemcode.net/2010/07/android-stubs-64/
      

  9.   

    多谢PoemCode、yyy025025025、quguoping1017,安装lib64z1-dev后,编译就正常了,现在还在编译中,我先来回帖了,呵呵~~~对android的代码审核和管理不太了解,如果任何人都可以上传代码,那代码不就乱了么?另外对android源码的分支结构不熟,各位能稍微介绍下么?谢了!
    分支结构:http://topic.csdn.net/u/20100629/19/c9440c0e-573f-407e-ad8b-6e241e3f77f2.html
    其中: “android-...”、“android-cts-...”、“android-sdk-...”、“android-sdk-tools-...”各代表什么?再次感谢各位~~~~
      

  10.   

    上面的链接错了,还编辑不了... 应该是:
    http://topic.csdn.net/u/20100629/00/43768adb-3e4f-40a8-84b6-bbb89f7286cb.html
      

  11.   

    参见:http://androidforums.com/android-developers/115959-ubuntu-10-04-android-open-source-make-error.html把external/clearsilver/cgi/Android.mk, external/clearsilver/java-jni/Android.mk, external/clearsilver/util/Android.mk, external/clearsilver/cs/Android.mk.下面脚本中的ifneq改为ifeq可暂时规避问题
    # This forces a 64-bit build for Java6
    ifneq ($(filter 1.6%,$(java_version)),)
    LOCAL_CFLAGS += -m64
    LOCAL_LDFLAGS += -m64
    endif
      

  12.   

    还是必须如楼上RZHTSNE兄说的,修改clearsilver下的4个android.mk,去掉-m64的编译选项,否则编译clearsilver时还是会碰到问题通不过。修改后,make clean一下,然后重新make,就编通过了 : )
      

  13.   

    楼主,你好
    我的android源码是2.2 froyo
    我在external/clearsilver/cgi/Android.mk, external/clearsilver/java-jni/Android.mk, external/clearsilver/util/Android.mk, external/clearsilver/cs/Android.mk.
    这四个Android.mk里面找不到下面的代码:
    # This forces a 64-bit build for Java6
    ifneq ($(filter 1.6%,$(java_version)),)
    LOCAL_CFLAGS += -m64
    LOCAL_LDFLAGS += -m64
    endif楼主有可以指点一下吗?
      

  14.   

    我的解决方法 1>修改/build/core/main.mk中关于BUILD_OS及JAVA VERSION的条件判断检查----最开始我的JDK是JDK1.5.0_21   2>修改下面4个文件----去掉m64的相关项external/clearsilver/cgi/Android.mk, external/clearsilver/java-jni/Android.mk, external/clearsilver/util/Android.mk, external/clearsilver/cs/Android.mk.
       3>plainsocketimpl.java:233:method does not override a method from its superclass       将JDK换成JDK1.6.0_22------记得导出JAVA_HOME改变PATH
       4>之所以用JDK1.5是因为JDK1.6编译doc会出问题,我只是听说
      
      

  15.   

    Maven and the “method does not override a method from its superclass” errorhttp://www.filsa.net/2008/02/11/maven-and-the-method-does-not-override-a-method-from-its-superclass-error/