У меня проблема с компиляцией нескольких .f90-программ, содержащих openmpi.При попытке скомпилировать программы, используя mpifort
, создание .o
-файлов, похоже, не составляет проблем, но создание исполняемого файла завершается неудачно.«Предупреждения» - это неопределенные ссылки на »mpi_address_«
и »mpi_type_struct_«
(только эти два).Используемый мной make-файл выглядит следующим образом:
all:$(EXE)
%.o:%.f90 input_parameters.h
$(FC) $(DFLAGS) $(FCFLAGS) -c $< $(MPILNFLAGS) -o $@
$(EXE):$(OBJ)
$(FC) $(DFLAGS) $(FCFLAGS) $(MPILNFLAGS) -o $(EXE) $(OBJ)
и
MPICFLAGS = $(shell mpifort --showme:compile)
MPILNFLAGS = $(shell mpifort --showme:link)
Кто-то знает, что делать?
PS: например, одна строка mpifort
выглядит так:
mpifort -D_MPI_ -I/usr/local/include -pthread -O3 -w -g -c file_name.f90 -pthread -Wl,-rpath -Wl,/usr/local/lib -Wl,--enable-new-dtags -L/usr/local/lib -lmpi -o file_name.o