gpt4 book ai didi

fortran - F77 : problem to compile with g77 a program which was normally compiled with Absoft compiler

转载 作者:行者123 更新时间:2023-12-01 23:26:09 30 4
gpt4 key购买 nike

我不是 Fortran 程序员(只是短暂的经验),但我需要编译一个部分用 F77 编写的程序。在我之前有人用 Absoft 编译器编译过它,但现在我需要在另一台机器上用 g77 重复这个过程。对于 Absoft,makefile 有

f77 -f  -w -O -B100 -B108 -c *.f
mv *.f flib && mv *.o olib
f77 -B100 -o runme olib/*.o clib/*.o -L/usr/X11R6/lib64 -L/usr/X11R6/lib -lX11 -L$PVM_ROOT/lib/$PVM_ARCH -lfpvm3 -lpvm3 -L$ABSOFT/lib -lU77

我已经将这些行修改为

g77   -w -O -B100 -B108 -c *.f
mv *.f flib && mv *.o olib
g77 -B100 -o runme olib/*.o clib/*.o -L/usr/X11R6/lib64 -L/usr/X11R6/lib -lX11 -L$PVM_ROOT/lib/$PVM_ARCH -lfpvm3 -lpvm3 -lgfortran -lgfortranbegin

但是我收到以下错误信息

somefile.f:(.text+0x93): undefined reference to `for_open'
somefile.f:(.text+0xf4): undefined reference to `for_write_seq_fmt'
somefile.f:(.text+0x128): undefined reference to `for_write_seq_fmt_xmit'
somefile.f:(.text+0x454): undefined reference to `for_read_seq'

我该如何解决这个问题?


更新1

如果我将 -libifcore 添加到最后一行(链接器)的末尾,那么我会得到

/usr/bin/ld: cannot find -libifcore

我找到图书馆了

$ find /opt/intel/* -name 'libifcore*'
/opt/intel/fce/9.1.036/lib/libifcore.a
/opt/intel/fce/9.1.036/lib/libifcore.so
/opt/intel/fce/9.1.036/lib/libifcore.so.5
/opt/intel/fce/9.1.036/lib/libifcore_pic.a
/opt/intel/fce/9.1.036/lib/libifcoremt.a
/opt/intel/fce/9.1.036/lib/libifcoremt.so
/opt/intel/fce/9.1.036/lib/libifcoremt.so.5
/opt/intel/fce/9.1.036/lib/libifcoremt_pic.a

但即使我在源码目录下做了以下操作

$ export PATH=$PATH:/opt/intel/fce/9.1.036/lib/
$ ln -s /opt/intel/fce/9.1.036/lib/libifcore.so

没有找到。

此外,这是我遇到另一个问题的同一台机器How to pass -libm to MPICC? libimf.so: warning: feupdateenv is not implemented and will always fail

如果需要,编译器似乎应该找到该库

$ echo $LD_LIBRARY_PATH
/opt/intel/fce/9.1.036/lib:/opt/intel/cce/9.1.042/lib:/usr/local/lib/openmpi:/usr/local/lib:/usr/lib:

最佳答案

Absoft 接受了与 g77 接受的 Fortran 77 扩展版本不完全兼容的 Fortran 77 扩展版本。

所以不能保证您可以不编辑代码就可以做到这一点。我似乎记得 Absoft 编译器接受了一种无法用 g77 复制的方便的初始化语法。

关于fortran - F77 : problem to compile with g77 a program which was normally compiled with Absoft compiler,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3365742/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com