在VS08之外,我从未做过任何大型编程。

我正在尝试使用两个相关的make文件之一来编译一个名为LAMMPS的程序。一个调用g++,另一个调用icc(英特尔的编译器)。

icc产生此错误:



和g++抛出此错误



mpi.h文件位于/usr/lib/openmpi/include

据我了解,我需要设置该$ PATH变量,该变量读取



和$ LD_LIBRARY_PATH当前读取



那么,如何包含mpi.h文件呢?这样,无论是icc还是g++都能找到它?

最佳答案

mpi.h是MPI库的 header 。如果在生成文件中使用mpic++ MPI编译器包装而不是g++,则将包括该文件。 mpic++将调用适当的编译器。根据您的描述,您已在ubuntu计算机上安装了openmpi软件包。

有关更多信息,您需要查阅手册,例如

http://lammps.sandia.gov/doc/Section_start.html#2_2(用于LAMMPS)

也许您需要查看openmpi手册以了解如何设置其他编译器。不知道在构建openmpi本身之后是否可以完成此操作。默认情况下,我认为在Ubuntu openmpi编译器中,包装器只会调用g++。 CMIIW。

关于linux - 在Ubuntu上为mpi.h设置G++或ICC,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5762126/

10-11 17:05