尚未解答 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(已寫好的檔案)