C 如何使用openMP为MPI程序生成makefile?

C 如何使用openMP为MPI程序生成makefile?,c,makefile,mpi,openmp,C,Makefile,Mpi,Openmp,我绝对没有在OpenMP中使用makefile for MPI程序的经验。我通常在命令提示符下运行 mpicc main.c -fopenmp -o Out mpirun -np 4 Out 所以现在我需要使用makefile,我的理解是我们使用makefile以更方便的方式运行命令,所以逻辑上我们应该在makefile中键入相同的命令,对吗?所以我的makefile现在看起来像这样 all: mpicc main.c -fopenmp -o Out mpirun -np 4

我绝对没有在OpenMP中使用makefile for MPI程序的经验。我通常在命令提示符下运行

mpicc main.c -fopenmp -o Out
mpirun -np 4 Out
所以现在我需要使用makefile,我的理解是我们使用makefile以更方便的方式运行命令,所以逻辑上我们应该在makefile中键入相同的命令,对吗?所以我的makefile现在看起来像这样

all: 
    mpicc main.c -fopenmp -o Out
    mpirun -np 4 Out

是否有关于如何为初学者创建makefile的分步指南?

Makefiles通常用于构建/编译、测试、安装和卸载程序和代码段。用它来实际运行程序并不常见,但你可以做到。您可以为它创建特定的规则,如
run

CC=mpicc
CFLAGS=-fopenmp
EXE=./Out
SRCS=main.c

all:
    $(CC) $(CFLAGS) $(SRCS) -o $(EXE)

run:
    mpirun -np 4 $(EXE)
因此,您可以使用
make
编译它,然后使用
makerun
调用它

CC=mpicc
CFLAGS=-fopenmp
EXE=./Out
SRCS=main.c

all:
    $(CC) $(CFLAGS) $(SRCS) -o $(EXE)

run:
    mpirun -np 4 $(EXE)
注意:规则中命令前面的空格必须是制表符

是否有一个关于如何为初学者创建makefile的分步指南

你可以看一看