如何为 Raspberry Pi Zero W 交叉编译 Rust 代码
How to cross-compile Rust code for the Raspberry Pi Zero W
我正在尝试将我的 64 位 x86 笔记本电脑上的 Rust 代码交叉编译为 Raspberry Pi Zero W 上的 运行。我使用 Rustup 安装了 arm-unknown-linux-gnueabihf
工具链,但是当我 运行 cargo build --target arm-unknown-linux-gnueabihf
时,我得到这个错误:
Internal error occurred: Failed to find tool. Is arm-linux-gnueabihf-gcc
installed?
我尝试安装 arm-linux-gnueabihf-gcc
package from AUR,但由于某种 GPG 密钥错误而一直失败,所以我决定使用 crosstool-ng 制作自己的交叉编译器。
我尝试使用 ~/.cargo/config
文件将 Cargo 指向我新建的交叉编译器:
[target.arm-unknown-linux-gnueabihf]
linker = "/home/ibi/x-tools/arm-unknown-linux-gnueabihf/bin/arm-unknown-linux-gnueabihf-gcc"
但是 Cargo 似乎忽略了这一点并给了我同样的错误。我该如何解决这个问题?
当我设置环境变量时它起作用了:
$ export CC="/home/ibi/x-tools/arm-unknown-linux-gnueabihf/bin/arm-unknown-linux-gnueabihf-gcc"
我正在尝试将我的 64 位 x86 笔记本电脑上的 Rust 代码交叉编译为 Raspberry Pi Zero W 上的 运行。我使用 Rustup 安装了 arm-unknown-linux-gnueabihf
工具链,但是当我 运行 cargo build --target arm-unknown-linux-gnueabihf
时,我得到这个错误:
Internal error occurred: Failed to find tool. Is
arm-linux-gnueabihf-gcc
installed?
我尝试安装 arm-linux-gnueabihf-gcc
package from AUR,但由于某种 GPG 密钥错误而一直失败,所以我决定使用 crosstool-ng 制作自己的交叉编译器。
我尝试使用 ~/.cargo/config
文件将 Cargo 指向我新建的交叉编译器:
[target.arm-unknown-linux-gnueabihf]
linker = "/home/ibi/x-tools/arm-unknown-linux-gnueabihf/bin/arm-unknown-linux-gnueabihf-gcc"
但是 Cargo 似乎忽略了这一点并给了我同样的错误。我该如何解决这个问题?
当我设置环境变量时它起作用了:
$ export CC="/home/ibi/x-tools/arm-unknown-linux-gnueabihf/bin/arm-unknown-linux-gnueabihf-gcc"