【问题标题】:How to change compiler of OpenMPI如何更改 OpenMPI 的编译器
【发布时间】:2019-10-27 10:38:08
【问题描述】:

我有使用 gcc 编译的 OpenMPI。我需要从 x86_64 主机架构交叉编译到 aarch64 目标架构。不使用 gcc 编译,我想使用 aarch64-linux-gnu-gcc 交叉编译。

有人知道如何将编译器从 gcc 更改为 aarch64-linux-gnu-gcc 吗?

提前致谢。

【问题讨论】:

  • OpenMPI 是一个库。它不使用 gcc 编译您的代码,使用 gcc 或 aarch64-linux-gnu-gcc 编译您的代码。您可能需要 OpenMPI 的 aarch64-linux 构建来编译/链接。
  • 好吧,这更有意义。根据我的发现,看起来 mpicc 是一个默认包装 gcc 的编译器。我正在查看此评论末尾的链接。在“文件”或“环境变量”部分下,似乎我可以更改 mpicc 正在使用的编译器。 manpages.ubuntu.com/manpages/cosmic/man1/mpicc.openmpi.1.html
  • 哦,对了,mpicc 是一个包装器,可以将正确的参数传递给您正在使用的任何编译器。
  • 如果我确实编辑了网页正在谈论的那些“文件”,下次我使用它时会改变 mpicc 吗?还是我必须重新配置或其他什么?

标签: gcc x86-64 cross-compiling openmpi arm64


【解决方案1】:

openmpi 允许在不同的编译器中使用它们的 mpi 包装器(即 mpicc、mpic++、...),方法是指定:

OMPI_CC=COMPILER_NAME_OR_PATH
OMPI_CXX=COMPILER_NAME_OR_PATH

例如,

OMPI_CC=clang
OMPI_CXX=clang++

OMPI_CC=/usr/bin/gcc-11
OMPI_CXX=/usr/bin/g++-11

在某些情况下,您可能需要通过添加 export 关键字来导出这些变量。

【讨论】:

    猜你喜欢
    • 2019-02-26
    • 1970-01-01
    • 1970-01-01
    • 2012-05-29
    • 2011-10-10
    • 2012-12-25
    • 2013-09-20
    • 2013-01-24
    • 2012-03-12
    相关资源
    最近更新 更多