如何安装 Android 的构建依赖项?

如何安装 Android 的构建依赖项?

我正在尝试使用这些包构建 Android 源代码。但我收到此错误:

$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev
[sudo] password for asdf: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package libc6-dev-i386
E: Unable to locate package lib32ncurses5-dev
E: Unable to locate package ia32-libs
E: Unable to locate package lib32readline5-dev
E: Unable to locate package lib32z-dev

我尝试下载并安装 libc6-dev-i386 debian 软件包这里。但是当我双击 .deb 文件时,Ubuntu 软件管理器显示错误的架构“amd64”。

(我的操作系统:32 位 Ubuntu 10.10(已更新),处理器:AMD phenom II 64 位。)

答案1

我认为 android.com 页面有点过时了。网上流传着许多不同的解决方法。我会尽量总结一下对我有用的方法。

这里有两个有用的页面(尽管不完善):

速成课程
野生艺术家

首先,根据以下情况判断,您可能希望使用java6而不是java5一些小组讨论主题 。因此,如果您在说明中看到 java5,请注意您需要用 sun java6 或 open java 6 进行替换。

以下是我的 32 位系统所需的软件包:

sudo apt-get install git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev openjdk-6-jdk ant gcc-multilib g++-multilib

这些就绪后,构建repo

sudo curl http://android.git.kernel.org/repo -o /usr/local/bin/repo   
sudo chmod a+x /usr/local/bin/repo

然后在你的构建目录中:

repo init -u git://android.git.kernel.org/platform/manifest.git    
repo sync

wildartist 网站继续:

如果遇到“未找到命令”消息,则可以使用以下命令执行此操作:

$ sudo sh /usr/local/bin/repo init -u git://android.git.kernel.org/platform/manifest.git
$ sudo sh /usr/local/bin/repo sync

虽然排队很快,但是获取代码还是需要花费一些时间,因为项目本身非常庞大。经过漫长的等待,你会发现 checkout 流程已经结束了。接下来要做的就是 MAKE 来构建项目。但是你会收到 Java 版本不正确的消息,构建过程失败。这时你可以修改 build/core/main.mk 文件,将文本 ”1.5″ 改为 “1.6″。

此时,您应该已经处理好了依赖项和代码。您仍然需要make

由于代码库和支持库和组件正在发生变化,很难使说明保持完全最新,这就是为什么这个过程有这么多相互冲突的操作方法。

答案2

您正在尝试安装一些存储库中没有的 32 位软件包。由于您的配置是 64 位,因此您无法安装 i386 软件包。尝试在 Synaptic 软件包管理器中查找类似的软件包。例如,搜索 libc6-dev 并安装适合您系统的软件包。

答案3

编辑:请参阅 jgbelacqua 的回答。Getlibs 可能应该成为社区 wiki 之类的...

获取库:

getlibs /path/to/binary
getlibs -l i386librarytoinstall.so
getlibs -p i386packagename
getlibs -w www.website.com/i386package.deb
getlibs -i /home/chris/i386package.deb

http://ubuntuforums.org/showthread.php?t=474790

@Pedram:恐怕你的回答实际上具有误导性。

相关内容