Я включил заголовок 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.