Android构建失败

时间:2010-07-07 16:05:45

标签: android ubuntu makefile compilation

我按照here的说明操作。 $ repo sync之后我尝试使用$ make构建它,但出现了此错误:

host SharedLib: libneo_cgi (out/host/linux-x86/obj/lib/libneo_cgi.so) 
/usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.4.3/../../../libz.so when searching for -lz 
/usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.4.3/../../../libz.a when searching for -lz 
/usr/bin/ld: skipping incompatible /usr/lib/libz.so when searching for -lz 
/usr/bin/ld: skipping incompatible /usr/lib/libz.a when searching for -lz 
/usr/bin/ld: cannot find -lz 
collect2: ld returned 1 exit status 
make: *** [out/host/linux-x86/obj/lib/libneo_cgi.so] Error 1 

使用Ubuntu 10.04 LTS。任何帮助表示赞赏。

UPD:我发现discussion,声称问题可能是我的32位系统上有64位库。

$ ls -l /usr/lib/libz.so 
lrwxrwxrwx 1 root root 20 2010-07-07 17:08 /usr/lib/libz.so -> /lib/libz.so.1.2.3.3

$ file /lib/libz.so.1.2.3.3
/lib/libz.so.1.2.3.3: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped

我怎么知道,如果libz.so.1.2.3.3是正确的lib,如果我必须用正确的lib替换它,我该怎么办?

另外,$ arch说,我有一个i686架构。机器,我使用的是联想ThinkPad SL500和Core 2 DUO CPU。

3 个答案:

答案 0 :(得分:3)

现在一切正常,解决方案是安装lib64z1-dev:

sudo apt-get install lib64z1-dev

修改现在还有另一个问题,使用ClearSilver,描述了here最终解决了here

答案 1 :(得分:1)

您需要安装libz。

sudo apt-get install libz-dev

答案 2 :(得分:1)

libz库在不同的发行版中有不同的名称

关于debian系统的

lib32z1