编译tielra平台的busybox时报这个错误.必须手动添加 -lc-lnss_files -lnss_dns -lresolv(-Wl,--start-group -lc -lnss_files -lnss_dns -lresolv -Wl,--end-group)作为链接参数..
这个貌似是glibc编译时的一个bug.
不过在网上找到问题的一个灵巧解决方法, 可以避免手动添加链接参数问题.. :)
将原来的libc.a静态库修改为libc_ns.a
# mv /usr/lib/libc.a /usr/lib/libc_ns.a重新创建libc.a, 不过是创建一个链接脚本, 将libnss_files.a, libnss_dns.a, libresolv.a都加入
# cat > /usr/lib/libc.a <<EOF /* GNU ld script Use the static library, but some functions are in other strange libraries :-( So try them secondarily. */ GROUP ( /usr/lib/libc_ns.a /usr/lib/libnss_files.a /usr/lib/libnss_dns.a /usr/lib/libresolv.a ) EOF
重新编译链接即可.
原文地址: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=76451
还有1种方法是给glibc打补丁.
貌似也能解决, 不过就没去试啦..