LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1470|回复: 14

求教PGI FORTRAN 编译问题。

[复制链接]
发表于 2009-5-9 15:21:13 | 显示全部楼层 |阅读模式
我在CENTOS5.3中安装了PGI FORTRAN 6.0。编译一个网上共享的GNU大软件,结果出现读库文件出错。不是FORTRAN本身的库,而是软件自己的库。错误是不认识库文件的格式。真奇怪。我重新编译了库文件,还是这个错。
我自己做了个测试程序,一点错也没有。该大软件好多人都用过了,也不会有错。估计是FORTRAN运行的环境配置了有问题。
哪位高手能给予指点,将不胜感激。
我的电脑是DELL笔记本,INTELL的T9300芯片。
发表于 2009-5-9 16:01:18 | 显示全部楼层
为什么要用 PGI Fortran ,笔记本上还用什么 PGI  ……
GNU 的那些是自由软件,不是共享软件。
怎么都是这么怪的应用…… GNU 自己的编译器为什么不用?另外,到底什么软件啊, GNU 的软件很多啊,个个都是“大”软件……打哑谜呢……

出错提示呢?配置文件呢?
回复 支持 反对

使用道具 举报

发表于 2009-5-9 17:16:08 | 显示全部楼层
Linux下用PGI或者ifc应该不奇怪吧,
Linux下有些软件确实是有兼容性问题的,
很挑编译器,
而且PGI和ifc编译的很多专业软件效率远高于GNU的编译器,
还有一堆的专有的优化参数。
不过楼主究竟遇到什么错误?
如楼上所说,
楼主应该把错误贴出来看看,
也许大家可以讨论讨论?
回复 支持 反对

使用道具 举报

发表于 2009-5-9 21:43:07 | 显示全部楼层
Post by realasking;1985307
Linux下用PGI或者ifc应该不奇怪吧,
Linux下有些软件确实是有兼容性问题的,
很挑编译器,
而且PGI和ifc编译的很多专业软件效率远高于GNU的编译器,
还有一堆的专有的优化参数。
不过楼主究竟遇到什么错误?
如楼上所说,
楼主应该把错误贴出来看看,
也许大家可以讨论讨论?


但他是笔记本呀,用 PGI 一般是大型机上,要调试很长时间, GNU 已经很烦人了,为了 PGI 的那点效率,把时间浪费在一台笔记本上划不来呀。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-5-9 23:32:27 | 显示全部楼层
感谢大家热心讨论。
这个软件是美国科研部门开发的一个气象数据处理软件。在网上共享,符合GNU协议。有兴趣者可在http://laps.noaa.gov/software/re ... 大家打哑谜。
这个软件说它大,主要是因为它非常复杂,而不是说它需要很高的配置。它既可以在大型计算机上业务应用,也可以在PC上科研应用。美国大学里很多人用它,国内也有一些大学在用。我过去在PC台式机上跑过。现在的笔记本比它配置高多了。应该没问题。
但是现在在笔记本上就是安装不上,问题就出在PGI FORTRAN上。LAPS指定用PGI FORTRAN,我也没办法。下面是出错信息例子和配置信息。
出错信息:
pgf90 main.f -I../../src/lib -Mnofree -byteswapio -i4 -I../../src/include -I/usr/local/include -I../../src/lib/modules -O2 -fastsse libwind.a ../../src/lib/liblaps.a ../../src/lib/wind/libwind.a ../../src/lib/modules/libmodules.a   -L/usr/local/lib -lnetcdf   -lgcc -o wind.exe
main.f:
libwind.a: could not read symbols: File format not recognized
make: *** [wind.exe] 错误 2

PGI的配置为:
export PGI=/usr/local/pgi
export PATH=/usr/local/pgi/linux86/6.0/binPATH
export MANPATH=$MANPATH:/usr/local/pgi/linux86/man
export LM_LICENSE_FILE=/usr/local/pgi/license.dat
license里没有过期

LAPS的配置为:
export LAPS_SRC_ROOT=/home/tan/claps/laps-0-35-9_src
export LAPSINSTALLROOT=/home/tan/claps/operation
export LAPS_DATA_ROOT=/home/tan/claps/data
export TEMPLATEDIR=/home/tan/claps/laps-0-35-9_src/template
export NEWPERL=/usr/bin/perl

希望大家能给出出主意。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-5-9 23:36:39 | 显示全部楼层
感谢大家热心讨论。
这个软件是美国科研部门开发的一个气象数据处理软件。在网上共享,符合GNU协议。有兴趣者可在http://laps.noaa.gov/software/restrct
下载.也可以和我索取该软件。因为专业性太强,不是故意和大家打哑谜。
这个软件说它大,主要是因为它非常复杂,而不是说它需要很高的配置。它既可以在大型计算机上业务应用,也可以在PC上科研应用。美国大学里很多人用它,国内也有一些大学在用。我过去在PC台式机上跑过。现在的笔记本比它配置高多了。应该没问题。
但是现在在笔记本上就是安装不上,问题就出在PGI FORTRAN上。LAPS指定用PGI FORTRAN,我也没办法。下面是出错信息例子和配置信息。
出错信息:
pgf90 main.f -I../../src/lib -Mnofree -byteswapio -i4 -I../../src/include -I/usr/local/include -I../../src/lib/modules -O2 -fastsse libwind.a ../../src/lib/liblaps.a ../../src/lib/wind/libwind.a ../../src/lib/modules/libmodules.a -L/usr/local/lib -lnetcdf -lgcc -o wind.exe
main.f:
libwind.a: could not read symbols: File format not recognized
make: *** [wind.exe] 错误 2

PGI的配置为:
export PGI=/usr/local/pgi
export PATH=/usr/local/pgi/linux86/6.0/binPATH
export MANPATH=$MANPATH:/usr/local/pgi/linux86/man
export LM_LICENSE_FILE=/usr/local/pgi/license.dat
license里没有过期

LAPS的配置为:
export LAPS_SRC_ROOT=/home/tan/claps/laps-0-35-9_src
export LAPSINSTALLROOT=/home/tan/claps/operation
export LAPS_DATA_ROOT=/home/tan/claps/data
export TEMPLATEDIR=/home/tan/claps/laps-0-35-9_src/template
export NEWPERL=/usr/bin/perl

希望大家能给出出主意。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-5-9 23:38:13 | 显示全部楼层
软件的名称叫LAPS
回复 支持 反对

使用道具 举报

发表于 2009-5-10 02:10:55 | 显示全部楼层
你的PGI安装的时候装对了吗?
感觉好像是编译出来的代码对应的操作系统平台不对,
或者是版本问题.
重新装一下或者再换一个版本试试?
或者,楼主先把Make文件中的-O2 -fastsse优化选项去掉看看能成功吗?
要不然把../../src/lib/wind/libwind.a换成-L../../src/lib/wind/libwind.a试试吧。
另外看到说明里说除pgi外还可以使用ifort,
楼主也可以试试。
回复 支持 反对

使用道具 举报

发表于 2009-5-10 02:16:09 | 显示全部楼层
可以用来做集合预报,不错的东西。

这么说来,你还是我的前辈呀 ^_^

刚才用 gfortran 试了一下,也不行,应该是相关库的问题。这个软件 的 make 文件写的很奇怪,要找起来挺麻烦的。

手边没有 pgi fortran 所以在下载 ifort ,有点大,需要时间安装。

不过,网站目录树里有个编译好的版本:

i686: http://laps.noaa.gov/software/re ... nux-i686-static.tgz
x86_64: http://laps.noaa.gov/software/re ... nux-i686-static.tgz

不在意性能的话,先下载下来看看?
回复 支持 反对

使用道具 举报

发表于 2009-5-10 02:32:52 | 显示全部楼层
我试了一下,
ifort可以编译,
但是我的gcc是4.4的,
反而编不下去了,
一直报错,
楼主可以试试ifort 9.1。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表