我已經包括了頭netdb.h中,其中包含的getaddrinfo,但GCC的問題這樣的警告:創建使用getaddrinfo的靜態鏈接二進制文件?
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製作的小得多。
我會讓你的可能解決方案的答案。然後你可以接受你自己的答案。 – Lucas 2010-05-18 07:53:55