linux下编译fortran程序 --zz
(2012-01-18 20:26:06)
标签:
fortran编译杂谈 |
分类: 学习资料收藏 |
本文的目的:在linux下编译单个的fortran程序,及运行
软件环境 操作系统:redhat-release-3AS-13.6.2
编译器:intel fortran
1.编译器的安装,这个网上很多,就不写了,随便搜搜就有,需要注意的是安装路径,及安装后的配置,推荐一篇安装文档
http://fanqiang.chinaunix.net/program/other/2005-03-25/3041.shtml
2.fortran 测试程序,最简单的hello.f90
代码如下:
program main
write(*,*) "hello"
stop
end
3.编译程序 使用命令 ifort -c hello hello.f90
编译后生成可执行文件hello 如果直接用ifort hello.f90,则默认生成文件是a.out
4. 执行可执行文件,在当前目录下输入./hello or ./a.out,就可以看到结果了
转自:http://adobb.blog.hexun.com/26521719_d.html
*******************************************************************************************************************************************************************************
在Linux系统下编译多个Fortran程序
最近需要在Linux系统下编译多个Fortran程序,在网上搜索了一下,但是资料不多,也许因为这个问题比较简单,不值一提,但还是把我知道的写出来,供大家参考: |
**********************************************************************************************************************************************************************************
注:由于程序是f77写的,使用了如下命令
#f77 -o hello hello.f 编译后生成可执行文件hello
或者:#f77 hello.f 默认生成文件是a.out
在当前目录下输入./hello or ./a.out,就可以看到结果了
编了一个Makefile文件:
=======================================================
FFLAGS = -O
LFLAGS = $(FFLAGS)
F77 = f77 -c
LINK = f77
HDFLIBS = -L/usr/local/hdf/lib -lmfhdf -ldf -ljpeg -lz
.f.o: ; $(F77) $(FFLAGS) $*.f -o $*.o
OBJECTS = \
main.o \
……
SOURCES = \
main.f \
……
xweno: $(OBJECTS)
$(LINK) $(LFLAGS) $(OBJECTS) -o xweno
program : $(SOURCES)
cat $(SOURCES) > cweno.f
clean:
-rm -f $(OBJECTS) xweno
### DO NOT remove this line - make depends on it ###
====================================================
注:现在装了ubuntu系统,发现原来的makefile不好使了
只能用命令编译了,对于多个fortran程序,解决办法:
在主程序main.f 结尾end后面加上
include “filename1.f”
include “filename2.f”
……
直至把所有要编译的.f文件全加上
然后打开终端进入程序所在目录执行下面命令
$ifort -o aout main.f
或者分布执行下面命令
$ifort -c main.f
$ifort -o aout main.o
然后就可以运行aout了
$./aout
aout为生成的可执行文件,可以根据自己爱好将文件名aout做相应修改。
--------------------------------------------------------------------------------------
转载自:
http://hi.baidu.com/ch02221/blog/item/b23845cca56e785a0eb345d3