Compilation 编译时没有警告的mpicc

Compilation 编译时没有警告的mpicc,compilation,mpi,Compilation,Mpi,我想知道使用什么标志来避免在使用mpicc编译C/C++并行程序时出现警告消息。更具体地说,我不希望屏幕上的消息涉及未使用的变量,例如警告:未使用的变量 谢谢大多数(?)MPI编译器包装器都会将编译器选项传递给它们包装的编译器。因此,对于mpicc,您应该能够使用与编译器unwrapped相同的标志 要获得更好的答案,请查阅mpicc安装的源代码,该源代码通常作为shell脚本实现(在Linux系统上)。许多版本也响应-help和类似功能。正如High Performance Mark所指出的,

我想知道使用什么标志来避免在使用mpicc编译C/C++并行程序时出现警告消息。更具体地说,我不希望屏幕上的消息涉及未使用的变量,例如警告:未使用的变量

谢谢

大多数(?)MPI编译器包装器都会将编译器选项传递给它们包装的编译器。因此,对于
mpicc
,您应该能够使用与编译器unwrapped相同的标志


要获得更好的答案,请查阅
mpicc
安装的源代码,该源代码通常作为shell脚本实现(在Linux系统上)。许多版本也响应
-help
和类似功能。

正如High Performance Mark所指出的,
mpicc
只是真正编译器工具链的包装器。有一个几乎所有包装器都能理解的标准选项:
-showme
。它向您显示了传递给编译器的确切标志,例如:

$ mpicc -showme
icc <lots of preprocessor flags> -fexceptions -pthread \
    <lots of linker flags> -lmpi -losmcomp -lrdmacm -libverbs -lrt \
    -lnsl -lutil -lpsm_infinipath -lbat -llsf -ldl -lm -lnuma
$mpicc-showme
icc-feexceptions-pthread\
-lmpi-losmcomp-lrdmacm-libverbs-lrt\
-lnsl-lutil-lpsm_infinipath-lbat-llsf-ldl-lm-lnuma

检查这些选项,查阅编译器手册,了解如何抑制警告。

根据编译器的不同,您可以添加标志以避免此类警告消息,例如
-w
是用于禁用警告消息的GCC范围的选项