Fortranbekymmer

Här diskuteras programmering och utveckling
Jam007
Inlägg: 52
Blev medlem: 27 aug 2010, 16:33
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS

Fortranbekymmer

Inlägg av Jam007 »

Jag tänkte försöka få igång GISS ModelII med gfortran men får felmeddelande. Makefile verkar vara gjord för Mac. Jag har inte tidigare använt Fortran i Ubuntu och det var bra många år sedan jag överhuvud taget använde det så jag är osäker på om jag har biblioteken rätt och om det är något med Fortran-versionerna som ställer till det.
Om versionen:

Kod: Markera allt

andersm@Surprise:~/GCM/modelII/trunk$ gfortran -v
Använder inbyggda specifikationer.
COLLECT_GCC=gfortran
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.6/lto-wrapper
Mål: x86_64-linux-gnu
Konfigurerad med: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.6.3-1ubuntu5' --with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Trådmodell: posix
gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) 
Felmeddelandena:

Kod: Markera allt

andersm@Surprise:~/GCM/modelII/trunk$ make -f Makefile.gfortran
gfortran  RANVAX.o setpath.o RFRCmacDBL.o UTILmacDBL.o Mjal2cpdC9.o Pjal0C9.o FORCINGSjalC9.o FFT36macDBL.o R83ZAmacDBL.o DB11pdC9.o README.o             -L/usr/lib/gcc/x86_64-linux-gnu/4.6 -o model.command
RANVAX.o: In function `master.0.randu_':
RANVAX.f:(.text+0x14): undefined reference to `ran___'
setpath.o: In function `setpath_':
setpath.f:(.text+0x7): undefined reference to `iargc___'
setpath.f:(.text+0x27): undefined reference to `getarg___'
setpath.f:(.text+0x38): undefined reference to `chdir___'
collect2: ld returnerade avslutningsstatus 1
make: *** [model.command] Fel 1
Makefile.gfortran:

Kod: Markera allt

F77COMPILER= gfortran
LINKER =    gfortran
F77_FLAGS =   -c -s -fconvert=big-endian -fno-automatic -ff2c -O2
# ifort  -O2   -convert big_endian       -IPF_fma  -save  -zero  -ftz  -assume 
# dummy_aliases  -align none -mp      -openmp   -c L23_DAILY_MClim_CH4mths.f  

#LIBS = -L/Developer/SDKs/MacOSX10.5.sdk/usr/lib
LIBS = -L/usr/lib/gcc/x86_64-linux-gnu/4.6
TARGET=      model.command

SRCS = RANVAX.f \
	setpath.f \
	RFRCmacDBL.f \
	UTILmacDBL.f \
	Mjal2cpdC9.f \
	Pjal0C9.f \
	FORCINGSjalC9.f \
	FFT36macDBL.f \
	R83ZAmacDBL.f \
	DB11pdC9.f \
	README.f
OBJS = $(SRCS:.f=.o)           # all objects

%.o: %.f
	$(F77COMPILER) -o $@ $(F77_FLAGS) $<

$(TARGET): $(OBJS)
	$(LINKER) $(LPATHS) $(OBJS) $(LNK_FLAGS) $(LIBS) -o $(TARGET)

clean:
	rm -f *.o
	rm -f $(TARGET)

.PHONEY: all clean
Någon som har tips?
The worthwhile problems are the ones you can really solve or help solve, the ones you can really contribute something to. ... No problem is too small or too trivial if we can really do something about it. / R Feynman

Återgå till "Programmering och webbdesign"