Я уже задавал этот вопрос на SO, но похоже, что проблема, вероятно, с компоновщиком.
Итак, вопрос в следующем:
Я пытаюсь построить проект, используя $ 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
Теперь посмотрите на эту библиотеку:
$ 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
и я имею:
$ arch
i686
Я установил эту библиотеку так:
sudo apt-get install libz-dev
Так.. Как мне пройти через это? И как я могу заставить Ubuntu загружать правильные библиотеки в будущем? И я на самом деле не уверен: это настоящая проблема или это где-то еще?
Я также не могу установить некоторые необходимые пакеты:
E: Couldn't find package lib32z1-dev
E: Couldn't find package lib32ncurses5-dev
PS Ubuntu 10.04 LTS, работающая на Lenovo ThinkPad SL500, процессор Core 2 DUO.