Rust ARMv7的独立可执行文件失败,因为它;无法打开共享对象文件";对于libstd

Rust ARMv7的独立可执行文件失败,因为它;无法打开共享对象文件";对于libstd,rust,rust-cargo,Rust,Rust Cargo,我正在尝试使用以下方法构建一个独立的基于锈蚀的二进制文件: cargo--target=armv7未知linux gnueabihf--release 每当我为目标系统构建二进制文件并在目标系统上复制和执行该二进制文件时,它都会死机: :加载共享库时出错: libstd-42431e74081a30a8.so: 无法打开共享对象文件:没有此类文件或目录 这意味着它找不到动态库 如果将动态库复制到外部SSD,并且存在指向它们的路径,则二进制文件在找到库时不会死机 最初.cargo/config

我正在尝试使用以下方法构建一个独立的基于锈蚀的二进制文件:

cargo--target=armv7未知linux gnueabihf--release
每当我为目标系统构建二进制文件并在目标系统上复制和执行该二进制文件时,它都会死机:

:加载共享库时出错:
libstd-42431e74081a30a8.so:
无法打开共享对象文件:没有此类文件或目录
这意味着它找不到动态库

如果将动态库复制到外部SSD,并且存在指向它们的路径,则二进制文件在找到库时不会死机

最初.cargo/config

rustflags = ["-C","target-feature=prefer-dynamic]
我也试过了

rustflags = ["-C", "target-feature=+crt-static"]
但是二进制文件仍然需要外部动态libs

.cargo/config文件内容包括:

[target.armv7-unknown-linux-gnueabihf]
ar = "arm-dey-linux-gnueabi-gcc-ar"
linker = "gcc-sysroot"

[build]
rustflags = ["-C", "target-feature=+crt-static"]
我预计目标的二进制文件将在不依赖dynamic.so或.rlib系统文件的情况下执行,因为我们有一个空间限制系统,其中SSD可能不在那里