【发布时间】:2017-06-13 13:13:50
【问题描述】:
我有一个用于i686-linux-unknown-gnu 的crosstool-ng 工具链,该工具链包含的 glibc 与我主机中安装的不同。
我的libc.so.6 的路径是:
~/x-tools/i686-unknown-linux-gnu/i686-unknown-linux-gnu/sysroot/lib
如何告诉 Cargo 链接到位于该目录中的 glibc 而不是系统目录?
我已经尝试过LD_LIBRARY_PATH,但还是不行。
有效的方法是在我的.cargo/config 文件中设置:
[target.i686-unknown-linux-gnu]
linker = "i686-unknown-linux-gnu-gcc"
但这会将我的程序与 GCC 工具链而不是 Clang 链接起来。我想使用 Clang 并链接到不同的 glibc。
【问题讨论】:
-
您是否尝试过更改
.cargo/config中的rustflags? -
您可能想在 /r/rust (Reddit) 上交叉发布问题,那里有几个用户进行交叉编译,其中必须选择另一个 libc,所以他们可能有一个很好的掌握如何最好地做到这一点。
标签: rust linker cross-compiling glibc rust-cargo