2015-12-09 3 views
1

Я пытаюсь построить программу на языке C с использованием статического флага (связывание статически). Пока я пытаюсь сделать так, компоновщик выдает сообщение об ошибке «не может найти библиотеку для -lc». Машина, которую я использую, - HP-UX. Я не знаю, какую библиотеку он требует, и где я могу найти его, чтобы я мог включать местоположение поиска по умолчанию при создании программы с опцией -L.ld: Невозможно найти библиотеку для -lc

avotclbh:/home/akhils/test_prog# 
avotclbh:/home/akhils/test_prog#gcc -v 
Using built-in specs. 
Target: ia64-hp-hpux11.31 
Configured with: ../gcc/configure 
Thread model: posix 
gcc version 4.2.3 
You have mail in /var/mail/root 
avotclbh:/home/akhils/test_prog# 


avotclbh:/home/akhils/test_prog#gcc -v -static test_debugging.c -o test_debugging.out -L/usr/lib/hpux64 
Using built-in specs. 
Target: ia64-hp-hpux11.31 
Configured with: ../gcc/configure 
Thread model: posix 
gcc version 4.2.3 
/usr/local/libexec/gcc/ia64-hp-hpux11.31/4.2.3/cc1 -quiet -v test_debugging.c -quiet -dumpbase test_debugging.c -auxbase test_debugging -version -o /var/tmp//ccjCisnQ.s 
ignoring nonexistent directory "NONE/include" 
ignoring nonexistent directory "/usr/local/lib/gcc/ia64-hp-hpux11.31/4.2.3/../../../../ia64-hp-hpux11.31/include" 
#include "..." search starts here: 
#include <...> search starts here: 
/usr/local/include 
/usr/local/lib/gcc/ia64-hp-hpux11.31/4.2.3/include 
/usr/include 
End of search list. 
GNU C version 4.2.3 (ia64-hp-hpux11.31) 
     compiled by GNU C version 4.2.3. 
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 
Compiler executable checksum: 207e4f838aed34ece15d2a59ed6e0ca7 
/usr/local/bin/as -x -o /var/tmp//cceZpXhF.o /var/tmp//ccjCisnQ.s 
/usr/local/libexec/gcc/ia64-hp-hpux11.31/4.2.3/collect2 -z +Accept TypeMismatch -u main -noshared -o test_debugging.out crt0.o /usr/lib/hpux32/unix98.o -L/usr/lib/hpux64 -L/usr/local/lib/gcc/ia64-hp-hpux11.31/4.2.3 -L/usr/ccs/lib -L/usr/local/lib/gcc/ia64-hp-hpux11.31/4.2.3/../../.. /var/tmp//cceZpXhF.o -lgcc -lc -lgcc 
**ld: Can't find library for -lc 
Fatal error. 
collect2: ld returned 1 exit status** 
avotclbh:/home/akhils/test_prog# 

Кроме того, я ниже зависимостей уже установленных на компьютере

avotclbh:/home/akhils/test_prog#swlist -l product |grep -iE "gcc|zlib|libiconv|gettext" 
    gcc     4.2.3   gcc 
    gettext    0.19.5.1  gettext 
    libiconv    1.14   libiconv 
    zlib     1.2.8   zlib 
avotclbh:/home/akhils/test_prog# 
+0

У вас установлен libc? –

+0

Да, это выглядит как ниже PHCO_43464 1.0 libc кумулятивный патч – theartist33

ответ

1

Установите glibc пакет библиотеки.

+0

glibc нет для HP-UX Я думаю, может быть libc, который уже установлен. Кроме того, я вручную связал libc.so, если это то, что ищет линкер, но все еще не работает. avotclbh:/home/akhils/test_prog # ll /usr/lib/hpux64/libc.so lr-xr-xr-x 1 bin bin 11 9 марта 2015 /usr/lib/hpux64/libc.so -> ./libc .so.1 avotclbh:/home/akhils/test_prog # – theartist33

+0

Я хочу знать, какая библиотека именно для компоновщика ищет -lc флаг? – theartist33

+1

@ theartist33 '-lc' заставляет компоновщик искать libc. –

Смежные вопросы