Ich habe eine crosstool-ng
Toolchain für i686-linux-unknown-gnu
, diese Toolchain enthält eine andere glibc als die, die in meinem Host installiert ist.Wie kann ich mein Rust-Programm mit einem anderen glibc verknüpfen?
Der Weg zu meinem libc.so.6
ist:
~/x-tools/i686-unknown-linux-gnu/i686-unknown-linux-gnu/sysroot/lib
Wie kann ich sagen, Fracht auf die glibc in diesem Verzeichnis ein anstelle des Systems angeordnet zu verknüpfen?
Ich habe bereits versucht LD_LIBRARY_PATH
, aber es funktioniert nicht.
Was funktioniert, ist in meiner .cargo/config
Datei setzen diese:
[target.i686-unknown-linux-gnu]
linker = "i686-unknown-linux-gnu-gcc"
Aber das verbindet mein Programm mit der GCC-Toolchain statt Clang. Ich möchte Clang verwenden und nur gegen eine andere glibc verlinken.
Haben Sie versucht, in die '' rustflags' Wechsel .cargo/config'? – kennytm
Vielleicht möchten Sie die Frage auf/r/rost (Reddit) überkreuzen, da gibt es mehrere Benutzer, die Cross-Compilation machen, in denen das Aufnehmen einer anderen libc obligatorisch ist, so dass sie wahrscheinlich gut verstehen, wie es am besten geht . –