Hi, a user contacted me about having a freshly installed version of NetBSD-current for amd64 built with clang, and a failure to run the provided "bootstrap kit" for rust, with the following error:
/usr/lib/libgcc_s.so.1: version GCC_3.3 required by /tmp/pkgsrc/wip/rust/work/rust-bootstrap/bin/cargo not found Now, the NetBSD/amd64 bootstrap is built "upstream", i.e. it is not one of the kits I maintain for NetBSD, and I'm pretty certain that bootstrap kit is built on NetBSD 8.x: : {115} pwd /usr/pkgsrc/wip/rust/work/rust-bootstrap/bin : {116} file cargo : ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /usr/libexec/ld.elf_so, for NetBSD 8.0, with debug_info, not stripped : {117} ldd cargo cargo: -lpthread.1 => /usr/lib/libpthread.so.1 -lc.12 => /usr/lib/libc.so.12 -lgcc_s.1 => /usr/lib/libgcc_s.so.1 -lm.0 => /usr/lib/libm.so.0 : {118} uname -ps NetBSD x86_64 : {119} (That's the 1.67.1 bootstrap kit, used for 1.68.*.) Now, I'm pretty sure this "bootstrap kit" has already been built with the equivalent of "CONFIGURE_ARGS+= --enable-cargo-native-static" (which is in our options.mk), which links nghttp2 and curl statically, but this does not eliminate the dynamic reference to libgcc_s.so.1. I've looked at ftp://nyftp.netbsd.org/pub/NetBSD-daily/HEAD-llvm/latest/amd64/binary/sets/ and specifically the base.tar.xz file, and it doesn't look like it has libgcc_s at all, but apparently MKGCC=yes will build it, but that doesn't appear to be the default (which is probably intentional). So ... what should I/we do about this? Do we need a separate rust bootstrap kit built with clang and built with a clang-built "target root"? It looks like there's no netbsd-9 nor netbsd-10 built with clang, only HEAD? Regards, - HÃ¥vard