通过命令查看支持哪些OS和CPU架构
rustc --print target-list | pr -tw100 --columns 3
通过ldd命令可以查看编译出来的程序是否依赖动态链接库:
1.先普通编译,比如cargo build --release(没有--release则是编译在debug目录)
2.通过ldd命令查看:ldd target/release/bin-name(bin-name是编译的可执行程序名字)
可以看到类似这样的输出:
linux-vdso.so.1 (0x00007ffd488b6000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007ff9c19e6000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007ff9c17de000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ff9c15bf000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007ff9c13a7000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ff9c0fb6000)/lib64/ld-linux-x86-64.so.2 (0x00007ff9c1e1f000)
说明是依赖了各类库的;
3.现在我们通过安装musl-libc工具链(比glibc要更轻量级,gnu-libc)
rustup target add x86_64-unknown-linu