【发布时间】:2014-02-07 16:10:02
【问题描述】:
我正在寻找一种使用 cmake 将 mpicc (openmpi) 使用的编译器从 g++ 更改为 icpc 的方法
我知道这可以通过使用环境变量 OMPI_MPICXX 来实现,但是当我尝试在 cmake 上设置该变量时不起作用,但是当我使用“导出”手动设置它时它会起作用
cmake上使用的行如下
set (ENV{OMPI_MPICXX} "icpc")
【问题讨论】:
我正在寻找一种使用 cmake 将 mpicc (openmpi) 使用的编译器从 g++ 更改为 icpc 的方法
我知道这可以通过使用环境变量 OMPI_MPICXX 来实现,但是当我尝试在 cmake 上设置该变量时不起作用,但是当我使用“导出”手动设置它时它会起作用
cmake上使用的行如下
set (ENV{OMPI_MPICXX} "icpc")
【问题讨论】:
似乎 cmake 在设置环境变量时调用了一个子shell,并且没有到达您想要的位置。
http://cmake.3232098.n2.nabble.com/Setting-environment-variables-td5529637.html
我会通过使用 shell 脚本调用 cmake 来做到这一点,该脚本会在调用 cmake 之前导出环境变量。
my_shell_script:
export OMPI_MPICXX "icpc"
cmake path/to/source
【讨论】: