您的位置:首页 > 移动开发 > Android开发

我在Ubuntu11.04下下载和安装Android2.3时遇到的问题

2011-09-02 12:47 267 查看
下载:

设置环境

1,安装JDK6

$ sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
$ sudo add-apt-repository "deb-src http://archive.canonical.com/ubuntu lucid partner"
$ sudo apt-get update
$ sudo apt-get install sun-java6-jdk

运行sudo add-apt-repository "deb-src http://archive.canonical.com/ubuntu lucid partner"这个命令时有错,忽略

2,安装必须的包

$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev \
libgl1-mesa-dev g++-multilib mingw32 tofrodos


引起以下错误:

E: 未发现软件包 lib32ncurses5-dev

E: 未发现软件包 ia32-libs

E: 未发现软件包 lib32readline5-dev

E: 未发现软件包 lib32z-dev

解决办法:将这几个包忽略

apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev x11proto-core-dev libx11-dev libgl1-mesa-dev g++-

multilib mingw32 tofrodos

但这样会引起编译时,错误1

sudo apt-get install libncurses5-dev

不知libncurses5-dev是否是lib32ncurses5-dev的替代版本?

3,apt-get install git-core curl时出问题

当时安装完操作系统后直接运行的该命令。

解决:

sudo apt-get update

安装完操作系统后必须更新一下源

4,无法获得锁 /var/lib/apt/lists/lock - open (11: 资源暂时不可用)

可能是我打开了“新力得”,没有正常关闭

解决:

直接删除lock文件

5,repo init -u git://android.git.kernel.org/platform/manifest.git是无法连接服务器

原因:单位通过HTTP代理上网,git可能走的是Socket

解决:

修改repo脚本中的

REPO_URL='git://Android.git.kernel.org/tools/repo.git'

改成

REPO_URL='http://Android.git.kernel.org/tools/repo.git'

6,repo sync下载代码是出现无法连接服务器

原因:单位通过HTTP代理上网,git可能走的是Socket

解决:

.repo/manifests/default.xml将其中的 fetch="git://android.git.kernel.org/" 改成

fetch="http://android.git.kernel.org/"

注意:.repo目录在工作目录下,是隐藏的,需要(ls -la 查看)

编译:

1,

/usr/bin/ld: cannot find -lncurses

collect2: ld returned 1 exit status

make: *** [out/host/linux-x86/obj/EXECUTABLES/adb_intermediates/adb] 错误 1

解决:$sudo apt-get install libncurses5-dev

2,这个问题在编译3.1.4.1.5.9.2.6.5时遇到,2.3没有该问题

sdk/build/tools.atree:47: couldn't locate source file: usr/share/pc-bios/bios.bin

sdk/build/tools.atree:48: couldn't locate source file: usr/share/pc-bios/vgabios-cirrus.bin

sdk/build/tools.atree:139: couldn't locate source file: framework/ddmlib-tests.jar

sdk/build/tools.atree:140: couldn't locate source file: framework/ninepatch-tests.jar

sdk/build/tools.atree:141: couldn't locate source file: framework/common-tests.jar

sdk/build/tools.atree:143: couldn't locate source file: framework/sdkuilib-tests.jar

make: *** [out/host/linux-x86/sdk/android-sdk_eng.android_linux-x86.zip] 错误 44

解决:

找到pc-bios目录,拷贝到/work/android/out/host/linux-x86/usr/share目录下;/work/android/out/host/linux-x86/framework/下的ddmlib.jar,ninepatch.jar,common.jar,sdkuilib.jar拷贝一份,分别命名为ddmlib-tests.jar,ninepatch-tests.jar,common-tests.jar,sdkuilib-tests.jar

模拟器

1,$ emulator命令无法启动模拟器解决:1)build/envsetup.sh

$ emulator

2)将/work/android/out/host/linux-x86/bin加入PATH环境变量中,其中/work/android/为我的工作目录

2,启动模拟器黑屏,背后窗口不断打印出错误信息:Trying to open the OpenGLES pipe without GPU emulation(3.1.4.1.5.9.2.6.5出问题,2.3无此问题)

解决办法:

没有找到办法

注意:用http://android.git.kernel.org/platform/manifest.git

获取的代码版本发现是:3.1.4.1.5.9.2.6.5

所以该错误不是编译2.3的错误

3,Android 2.3用android启动AVD出现下面错误

SWT folder '/work/android/out/host/linux-x86/framework/x86' does not exist.

Please export ANDROID_SWT to point to the folder containing swt.jar for your platform.

解决:

export ANDROID_SWT=~/android/out/host/linux-x86/framework

4,AVD中无法选Target

解决:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: