使用icc打开MPI:" Open MPI需要C99编译器"

时间:2017-11-15 17:07:19

标签: openmpi icc

如果我跑

../configure CC=icc CXX=icpc F77=ifort FC=ifort

配置以

停止
============================================================================
== Compiler and preprocessor tests
============================================================================

*** C compiler and preprocessor
checking for gcc... (cached) icc
checking whether we are using the GNU C compiler... (cached) yes
checking whether icc accepts -g... (cached) yes
checking for icc option to accept ISO C89... (cached) none needed
checking whether icc understands -c and -o together... (cached) yes
checking for icc option to accept ISO C99... unsupported
configure: WARNING: Open MPI requires a C99 compiler
configure: error: Aborting.

我试图从源代码构建Open MPI 3.0.0。我使用的是英特尔编译器版本18.0.0 20170811.环境是Arch Linux。

为什么Open MPI出现icc不符合C99的问题?

2 个答案:

答案 0 :(得分:1)

如果与glibc 2.26结合使用,最新的ICC似乎有问题。版本18.0.0仍然存在此问题。目前,修复方法是包含标记rspString = Unirest.post(Endpoint) .header("Content-Type", "application/json") .body(createjson(user)) .asString().getBody(); public String createjson(user) { ObjectMapper objectMapper = new ObjectMapper(); String json = objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(obj); return json; }

-D_Float128=__float128

答案 1 :(得分:0)

如果您不需要使用经典的C ++,则可以选择使用C99进行编译

../configure C99=icc CXX=icpc FC=ifort