rust 基于板条箱的交叉建筑系统

gpfsuwkq  于 2022-11-12  发布在  其他
关注(0)|答案(1)|浏览(226)

我试着用他们的-sys板条箱交叉构建一些rust包。主机是x86_64(Ubuntu 22.04),目标是aarch 64(Alpine)。
所以我使用这些启用了vendored标志的crate来构建它们。我在主机上安装了musl-tools和musl-dev,因为Alpine不使用libc。
却得到:

error occurred: Failed to find tool. Is `aarch64-linux-musl-gcc` installed?

我在构建应用程序之前设置了rustup target add aarch64-unknown-linux-musl
所以aarch64-linux-musl-gcc必须通过musl-tools安装?或者我必须安装其他东西?

2vuwiymt

2vuwiymt1#

我认为您需要的是aarch64-unknown-linux-musl目标;我不认为aarch64-linux-musl-gcc是一个东西。
尝试为当前工具链安装目标:

rustup target add aarch64-unknown-linux-musl

然后为 * 该 * 源代码构建:

cargo build --release --target aarch64-unknown-linux-musl

此外,如果您是从Windows中为该目标进行构建,那么从WSL 2中进行构建几乎毫无疑问会更容易。
进一步注意:虽然我从来没有为aarch64构建过,但我 * 已经 * 尝试过为x86_64-unknown-linux-musl Alpine目标构建openssl,而且我从来没有让它工作过。我不知道你的应用程序是什么,但是如果你在构建openssl时遇到困难,即使使用正确的目标,你也可以试试是否可以使用rustls

相关问题