先上模板:
# Fortran compiler
FC = gfortran
# Flags to pass to the Fortran compiler
FCFLAGS = -Wall -Wextra -O3
# Name of the executable to generate
EXEC = myprogram
# List of source files
SRCS = file1.f90 file2.f90
# Object files to generate
OBJS = $(SRCS:.f90=.o)
# Rule to build the executable
$(EXEC): $(OBJS)
$(FC) $(FCFLAGS) -o $@ $^
# Rule to build object files from source files
%.o: %.f90
$(FC) $(FCFLAGS) -c $< -o $@
# Clean rule
clean:
rm -f $(OBJS) $(EXEC)
- 在这个makefile中,Fortran编译器被设置为gfortran,传递给编译器的标志被设置为 -Wall -Wextra -O3。你应该根据你的具体需要来调整这些设置。
- 要生成的可执行文件的名称被设置为myprogram,但你可以把它改成你喜欢的样子。
- 源文件列表被设置为file1.f90和file2.f90,但你应该用你的源文件的实际名称来替换它们。
- makefile包括一个从目标文件构建可执行文件的规则,以及一个从源文件构建目标文件的规则。
- 最后,有一条清理规则,可以用来删除对象文件和可执行文件。
以下是实操版本:
TARGET = fem_tera.exe
#FC = mpifrt
#FC = frt
#CC = c++
FC = ifort
CC = icpc
#FDIR =
#FLIBS =
INLINE_EXPANSION= -DINLINE_EXPANSION -DINLINE_EXPANSION_MATH
STOP_PAUSE= -DSTOP_PAUSE
DEBUG_OPT = -DDEBUG -DVALIDATION -DTIMER
DOPT = -DLINUX -DLSDYNA_NOT_USED -DSWITCH_CONTROL_OFF $(INLINE_EXPANSION) $(STO