【发布时间】:2012-10-03 23:30:10
【问题描述】:
我正在尝试使用 openmpi 编译一个程序,我的代码没有给出任何错误,但其中一个 mpi 标头却出现了错误:
/usr/include/openmpi-x86_64/openmpi/ompi/mpi/cxx/mpicxx.h:168: error: expected identifier before numeric constant
/usr/include/openmpi-x86_64/openmpi/ompi/mpi/cxx/mpicxx.h:168: error: expected unqualified id before numeric constant
标题中的相关代码行简单地写着:
namespace MPI {
我正在使用 mpiCC 编译器。难道我做错了什么?或者这是 openmpi 中的错误?
提前致谢。
【问题讨论】:
-
您是否尝试使用 C 编译器包装器编译 C++ 代码?
-
你是如何安装 Open MPI 的?
-
能否也请您发布
mpiCC -showme的输出。 -
我通过 Scientific Linux 中的添加/删除软件管理器安装了 OpenMPI。 @Hristo mpiCC -showme 的输出:g++ -I/usr/include/openmpi-x86_64 -pthread -m64 -L/usr/lib64/openmpi/lib -lmpi_cxx -lmpi -lopen-rte -lopen-pal -ldl -Wl, --export-dynamic -lnsl -lutil -lm -ldl
-
那么看起来您的 C++ 编译器将您的代码视为 C 代码,而不是 C++。文件的扩展名是什么?是
.cpp或.C或.cc或.cxx或.c++还是只是.c?
标签: openmpi