Я включил заголовок netdb.h
, где включен getaddrinfo
, но gcc выдает это предупреждение:
warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
gcc -m32 -static -s -O2 -std=c99 -D_POSIX_C_SOURCE=200112L myprogram.c
Как я могу статически скомпилировать отсутствующий файл?
Возможные решения:
Возможно, в установке glibc отсутствует соответствующий объектный файл, необходимый для статической компиляции. Если это так, создайте соответствующий объектный файл и свяжите его при компиляции.
Попробуйте EGLIBC вместо glibc.
Я успешно скомпилировал свою программу с dietlibc, которая скомпилировалась без каких-либо ошибок, плюс полученный двоичный файл был намного меньше, чем то, что делает glibc.