贊助廠商

娛樂城推薦

首頁

刊登資訊

  • 刊登者:匿名
  • 時間:2021-06-05 01:40:12

尚未解答Fortran- 無法輸出output(已寫好的檔案)

Fortran- 無法輸出output(已寫好的檔案)

我拿到一份寫好的檔案要試跑

理論上應該執行就好了 不過我怎麼試 make 或 gfortran 都沒有 output file 產生

請問問題可能出在哪裡 還是我該用別的指令?

(資料在 cabbagel.F
主程式會呼叫一個叫做 parfit的資料夾裡面的檔案
結果應該要產生成一個檔案

我在Ubuntu 下打 make 或 make cabbagel 或 改成gfortran ,會跑但都沒有產生)

__下面是主程式的makefile__

# Makefile for PARFITS
# version including handling of implicit switches

MAKE = make
FC = gfortran

TRAJEC = traj.o
BLASM = ./parfits/blasm/blas.o \
./parfits/blasm/mutil.o \
./parfits/blasm/dgesvd1.o

INTEGR1 = ./parfits/integr/metanb.o
# INTEGR2 = ./parfits/integr/difsys.o (not available)

PARFITS = ./parfits/parfits.o \
./parfits/monitn.o \
./parfits/initju.o \
./parfits/hcut.o \
./parfits/inscal.o \
./parfits/rankr.o \
./parfits/evalc.o \
./parfits/ssai.o \
./parfits/chscal.o \
./parfits/calcom.o \
./parfits/ind.o \
./parfits/intj.o \
./parfits/idcon.o \
./parfits/qdiff.o \
./parfits/hdiff.o \
./parfits/update.o \
./parfits/fd.o \
./parfits/yallfunc.o \
./parfits/upmult.o \
./parfits/exit.o

INCREM = ./parfits/increm/increm4.o \
./parfits/increm/inc4_l2.o \
./parfits/increm/inc4_l1.o \
./parfits/increm/inc4_l3.o \
./parfits/increm/dec4_l2.o \
./parfits/increm/sol_l2.o \
./parfits/increm/sol_l1.o \
./parfits/increm/sol_l3.o \
./parfits/increm/dminv_l1.o \
./parfits/increm/qpsol.o \
./parfits/increm/lpckk.o \
./parfits/increm/qpckk.o \
./parfits/increm/qpckk1.o \
./parfits/increm/qpckk2.o \
./parfits/increm/crj.o

COV = ./parfits/cov/cov.o \
./parfits/cov/cov4.o \
./parfits/cov/covtot.o

PRINT = ./parfits/print/print.o \
./parfits/print/prtmain.o \
./parfits/print/prthead.o \
./parfits/print/prtit.o \
./parfits/print/prtmatrix.o \
./parfits/print/prtmatrixlp.o \
./parfits/print/prtmatrixhp.o \
./parfits/print/prtmatrixint.o


PYMETS = pymets.o
PYMET2S = pymet2s.o
CABBAGEL = cabbagel.o
CABBAGEQ = cabbageq.o
CABBAGELLL = cabbagelll.o
CABBAGEQQQ = cabbageqqq.o


PYMETDS = $(PYMETS) $(PARFITS) $(INCREM) $(COV) $(INTEGR1) $(BLASM)
$(PRINT) $(TRAJEC)
PYMET2DS = $(PYMET2S) $(PARFITS) $(INCREM) $(COV) $(INTEGR1) $(BLASM)
$(PRINT) $(TRAJEC)
CABBAGDL = $(CABBAGEL) $(PARFITS) $(INCREM) $(COV) $(INTEGR1) $(BLASM)
$(PRINT) $(TRAJEC)
CABBAGDQ = $(CABBAGEQ) $(PARFITS) $(INCREM) $(COV) $(INTEGR1) $(BLASM)
$(PRINT) $(TRAJEC)
CABBAGDLLL = $(CABBAGELLL) $(PARFITS) $(INCREM) $(COV) $(INTEGR1) $(BLASM)
$(PRINT) $(TRAJEC)
CABBAGDQQQ = $(CABBAGEQQQ) $(PARFITS) $(INCREM) $(COV) $(INTEGR1) $(BLASM)
$(PRINT) $(TRAJEC)

FFLAGS = -c -g -Wall
CCFLAGS = -c -g -Wall
#LDFLAGS = -Wall

all: pymets pymet2s \
cabbagel cabbageq \
cabbagelll cabbageqqq

pymets: lkmaxdim mkparfits $(PYMETDS)
-@$(FC) $(PYMETDS) $(LDFLAGS) -o $@

pymet2s: lkmaxdim mkparfits $(PYMET2DS)
-@$(FC) $(PYMET2DS) $(LDFLAGS) -o $@

cabbagel: lkmaxdim mkparfits $(CABBAGDL)
-@$(FC) $(CABBAGDL) $(LDFLAGS) -o $@

cabbageq: lkmaxdim mkparfits $(CABBAGDQ)
-@$(FC) $(CABBAGDQ) $(LDFLAGS) -o $@

cabbagelll: lkmaxdim mkparfits $(CABBAGDLLL)
-@$(FC) $(CABBAGDLLL) $(LDFLAGS) -o $@

cabbageqqq: lkmaxdim mkparfits $(CABBAGDQQQ)
-@$(FC) $(CABBAGDQQQ) $(LDFLAGS) -o $@


mkparfits:
-@cd parfits;$(MAKE) parfit

lkmaxdim:
-@echo 'Link auf maxdim wird gesetzt.'
-@rm maxdim.f -f
ln -s ./parfits/maxdim.f maxdim.f

clean:
$(MAKE) clean -C ./parfits
rm maxdim.f -f
rm *.o -f
rm fort.* -f
rm pymets.f -f
rm pymet2s.f -f
rm cabbagel.f -f
rm cabbageq.f -f
rm cabbagelll.f -f
rm cabbageqqq.f -f
rm delays.f -f
rm traj.f -f
rm pymets -f
rm pymet2s -f
rm cabbagel -f
rm cabbageq -f
rm cabbagelll -f
rm cabbageqqq -f


# Following lines provide automatic invocation of the
# C preprocessor cpp for FORTRAN files with suffix .F
# (Default on most UNIX platforms, but not on IBM's)

# define preprocessor
CPP = /lib/cpp

# compiler option for preprocessor
CPFLAGS = -P

.SUFFIXES: .F

.F.o:
-@$(CPP) $(CPFLAGS) $< $*.f
$(FC) $(FFLAGS) $*.f
-@rm -f $*.f
.f.o:
-@$(FC) $(FFLAGS) $*.f
.c.o:
$(CC) $(CCFLAGS) $*.c

--

0個答案 Fortran- 無法輸出output(已寫好的檔案)

其他問題

友站連結