如何在单独的模块中声明函数和子例程并在适当的非头模块中对其进行初始化?
我正在使用make进行编译:
# All modules
OBJS := $(BINDIR)/physics.o $(BINDIR)/particles.o
# Build rules
$(BINDIR)/%.o: $(VPATH)/%.f | $(BINDIR)
$(FC) $(FFLAGS) -c $^ -o $@
$(BINDIR)/%.mod:
runner: $(OBJS)
..问题是physics.f依赖于particles.f中的子程序,反之亦然。所以我不能只改变这些文件的编译顺序。
我收到这样的错误:
src/physics.f:105.23:
use particles
1
Fatal Error: Can't open module file 'particles.mod' for reading at (1): No such file or directory
make: *** [bin/physics.o] Error 1