簡體   English   中英

makefile .mod編譯規則

[英]makefile .mod compilation rule

我正在修改代碼的makefile。 編譯后,我看到生成了一些* .mod文件。 在網上查看時,我發現它們是模塊文件,但沒有看到針對它們的編譯規則。 我正在嘗試更改在其中生成這些文件的目錄。 我可以更改目標文件的規則,但是找不到生成* .mod文件的規則。

查看makefile,有人可以建議我該文件中的一行是否生成它們,或者如何更改其目錄。 這是makefile:

   # GNU Makefile

   # Paths
   SDIR=./solver
   ODIR=./obj
   _CASE=./WorkCases/problem
   CASE=$(SDIR)/$(_CASE)
   TOP = .  

   FC      =       ifort

   FFLAGS          =       -fpp -O1 -DPTR_INTEGER8 -warn nousage

   # Define rule to make .f90
   $(ODIR)/%.o : $(SDIR)/%.f90 
    $(FC) -c $(FFLAGS) $< -o $@


   # set executable name
   EXEC = $(dir ${CASE})/$(basename $(notdir ${CASE})).out


   # shared global variables
   _SHARED_OBJ =    shared_modules.o main_vars.o debug_vars.o
   SHARED_OBJ = $(patsubst %,$(ODIR)/%,$(_SHARED_OBJ))

   OBJ     =  ${_SHARED_OBJ} $(_CASE).PARAMS.o 
   OBJ = $(patsubst %,$(SDIR)/%,$(_OBJ))

   MAIN_OBJ = $(ODIR)/main.o


   main : ${SHARED_OBJ} $(OBJ) $(MAIN_OBJ) 
    $(FC) ${FFLAGS} $(OBJ) $(MAIN_OBJ) -o $(EXEC) -lstdc++ -shared-intel

您可以使用-module編譯器選項為.mod文件指定目標目錄。

-module <directory> 

請在此處查看ifort文檔:

您可以使用模塊路徑編譯器選項來指定在其中創建模塊文件的目錄。 如果不使用此選項,則在當前目錄中創建模塊文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM