Rust MacOS 编译 linux 项目

一、编译 linux 程序

1.2、安装 musl-cross

  • 要实现 Linux 平台可以运行的程序,那么需要使用 musl 来替代 glibc,musl 实现了Linux libc。
  • musl 在 macOS 上使用 musl-cross, musl-cross 是用来专门编译到 Linux 的工具链。
brew install FiloSottile/musl-cross/musl-cross
# 按装好 musl-cross 需要软连接否则编译缺少工具, 具体位置需要参考安装好的提示
sudo ln -s /usr/local/Cellar/musl-cross/0.9.9_2/bin/x86_64-linux-musl-gcc /usr/local/bin/musl-gcc

1.2、Rust 操作

rustup target add x86_64-unknown-linux-musl

# 修改配置文件,没有需要新增文件并添加下面内容
[target.x86_64-unknown-linux-musl]
linker = "x86_64-linux-musl-gcc"

二、openssl-ssl 报错

brew install openssl
brew install pkg-config
brew install perl

# cargo.toml的[dependencies]添加如下
openssl-sys = "0.9.102"
openssl = { version = "0.10.64", features = ["vendored"] }

三、执行编译

  • 最终可执行程序在 ls target/x86_64-unknown-linux-musl/release/下
#   下面二选一
cargo build --release --target x86_64-unknown-linux-musl
CROSS_COMPILE=x86_64-linux-musl- cargo build --release --target x86_64-unknown-linux-musl

版权声明:
作者:Akiraka
链接:https://www.akiraka.net/code/rust/1559.html
来源:Akiraka
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
海报
Rust MacOS 编译 linux 项目
一、编译 linux 程序 1.2、安装 musl-cross 要实现 Linux 平台可以运行的程序,那么需要使用 musl 来替代 glibc,musl 实现了Linux libc。 musl 在 macOS 上……
<<上一篇
下一篇>>
文章目录
关闭
目 录