如何在 ARM M1 Apple Silicon Mac 上将 Rust 代码交叉编译为 Intel 程序集?

hip*_*ail 0 macos x86-64 cross-compiling rust

我一直在比较 C 和 Rust 为 x86 和 ARM 生成的汇编代码。

我有一台 M1 Mac,我找到了如何用 Clang 交叉编译 C,但到目前为止我找不到如何交叉编译 Rust。

如何在 M1 Mac 上从 Rust 生成 x86_64 二进制文件?

HHK*_*HHK 6

内置交叉编译,仅用于rustup安装目标支持:

$ rustup target install x86_64-apple-darwin
Run Code Online (Sandbox Code Playgroud)

并像这样构建您的板条箱:

$ cargo build --target x86_64-apple-darwin
Run Code Online (Sandbox Code Playgroud)

感谢 Rosetta,你甚至可以像这样运行它:

$ cargo run --target x86_64-apple-darwin
Run Code Online (Sandbox Code Playgroud)