当前位置:   article > 正文

rust 交叉编译环境搭建_rust交叉编译环境

rust交叉编译环境

项目使用Arm Cortex-A57 芯片,架构为aarch64

1 rust 添加交叉编译器目标,可以使用rustup target list 查看当前安装的目标

rustup target add aarch64-unknown-linux-gnu

2 工程根目录创建  .cargo  文件夹,在文件夹中创建config文件,文件内容如下,指定交叉编译器

  1. [target.aarch64-unknown-linux-gnu]
  2. linker = "/opt/ddarm/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc"

3 工程根目录创建arm_compile 脚本文件,设置cargo build之前的环境变量PKG_CONFIG_SYSROOT_DIR和PKG_CONFIG_PATH

  1. #!/usr/bin/sh
  2. export PKG_CONFIG_SYSROOT_DIR=/opt/ddarm/sysroot
  3. export PKG_CONFIG_PATH=/opt/ddarm/sysroot/usr/lib/pkgconfig
  4. cargo build --target=aarch64-unknown-linux-gnu

4 下载交叉编译工具链,放在linker指定的位置,这里指/opt/ddarm/文件夹下,使用linaro的交叉编译工具

5 将目标设备中根目录下的lib,sbin,usr,文件夹拷贝出来,放到PKG_CONFIG_SYSROOT_DIR指定的文件夹,这里是/opt/ddarm/sysroot

6 在工程根目录运行 ./arm_compile 就可以完成交叉编译,编译后的文件在/target/aarch64-unknown-linux-gnu/debug目录下,拷贝到目标设备中就可以直接运行。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/533467
推荐阅读
相关标签
  

闽ICP备14008679号