我有3个C文件,它们都是一个C程序。其中一个是MPI文件,它叫做mpi.c,其他的是read.c和write.c。我不知道如何在我的Makefile中包含mpi.c,这里到目前为止(这是错误的):
all: program
program: mpi.o read.o write.o
mpicc mpi.o read.o write.o -o program // I think this line is wrong
mpi.o: mpi.c
mpicc -o mpi.o mpi.c
read.o: read.c
gcc -c read.c -o read.o
write.o: write.c
gcc -c write.c -o write.o
clean:
rm -f write.o read.o mpi.o program core *~
答案 0 :(得分:4)
我认为就是这条线:
mpicc -o mpi.o mpi.c
它应该是
mpicc -c mpi.c -o mpi.o
或只是
mpicc -c mpi.c
它的方式,它试图将mpi.c单独编译成一个名为mpi.o的程序,当mpi.o应该只是一个目标文件时。