我不断收到错误:
fatal error: mpi.h: No such file or directory
我如何包含mpi.h
为默认库?我相信我已经放c:\MPICH2\bin
了系统变量>路径
编译器找不到头文件。系统 PATH 变量与此无关。
为了运行编译器,它需要位于系统 PATH 上(当您在命令行上键入它时,操作系统会在此处查找“gcc”)。一旦 GCC 运行,它需要知道在哪里可以找到头文件。-I
您可以使用以下标志添加包含路径:
gcc -I"C:/Program Files (x86)/MPICH2/include" -c -o main.o main.c
完成后,所有内容都已编译,下一步就是链接程序。您将需要使用-L
标志指定库的路径:
gcc -L"C:/Program Files (x86)/MPICH2/lib" -o main.exe main.o -lmpi
通常这是由mpicc
脚本处理的,因此您不必担心这一点。不过,mpicc
预构建的 Windows MPICH2 附带的不能与 MinGW 一起使用(我认为)。
我在 Ubuntu 13.10 上遇到了同样的问题。在 .zshrc (或 .bashrc 如果你使用 bash shell)中添加这一行
export C_INCLUDE_PATH=/usr/lib/openmpi/include
为我做了伎俩