Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Fortran 为ifort提供库的路径_Fortran_Intel Fortran - Fatal编程技术网

Fortran 为ifort提供库的路径

Fortran 为ifort提供库的路径,fortran,intel-fortran,Fortran,Intel Fortran,免责声明:这不是我的领域,我也不懂行话 我试图在计算服务器上编译和运行一些代码。机器上安装了英特尔编译器。当我尝试使用 ifort src.f -o mem 一切正常。如果我尝试优化事物: ifort -fast src.f. -o mem 我首先收到的信息是: ipo: remark #11001: performing single-file optimizations ipo: remark #11006: generating object file /tmp/ipo_ifortY

免责声明:这不是我的领域,我也不懂行话

我试图在计算服务器上编译和运行一些代码。机器上安装了英特尔编译器。当我尝试使用

ifort src.f -o mem
一切正常。如果我尝试优化事物:

ifort -fast src.f. -o mem 
我首先收到的信息是:

ipo: remark #11001: performing single-file optimizations
ipo: remark #11006: generating object file /tmp/ipo_ifortYepD4m.o
这似乎合乎逻辑。当我运行out文件时,我得到一个错误:

./mem: error while loading shared libraries: libgfortran.so.1: cannot open shared object file: No such file or directory
我搜索了
libgfortran

avityo@admin:~/prog/mn270.161> locate libgfortran
/home/MATLAB/R2011b/sys/os/glnxa64/libgfortran.so.3
/home/MATLAB/R2011b/sys/os/glnxa64/libgfortran.so.3.0.0
/opt/matlab/r2012b/sys/os/glnxa64/libgfortran.so.3
/opt/matlab/r2012b/sys/os/glnxa64/libgfortran.so.3.0.0
/usr/lib64/gcc/x86_64-suse-linux/4.3/libgfortran.a
/usr/lib64/gcc/x86_64-suse-linux/4.3/libgfortran.so
/usr/lib64/gcc/x86_64-suse-linux/4.3/libgfortranbegin.a
/usr/lib64/libgfortran.so.3
/usr/lib64/libgfortran.so.3.0.0

有没有办法告诉ifort可用的libgfort库?

我同意弗拉基米尔的观点,gfortran和ifort之间存在一种奇怪的依赖关系。但是,ifort似乎正在寻找libgfortran.so.1,而其中列出了libgfortran.so.3。您应该能够通过
ln-s[target][shortcut]
将前者链接到后者。就是

    ln -s /usr/lib64/libgfortran.so.3 /usr/lib64/libgfortran.so.1

这真奇怪。iPort不应该依赖于libgfortran,也不应该依赖于它的旧版本。你确定你在这里复制了这个汇编吗?为什么在
src.f.
中有另一个点?在调试运行时链接问题时,使用
ldd
实用程序并查看其输出通常是有指导意义的。@VladimirF这个额外的点是我发布问题时的一种类型。当我尝试运行输出(bin?)文件时,计算服务器会打印输出(这是一个队列系统)而不是编译代码的机器。@HighPerformanceMark您能给我任何关于如何执行此操作的链接吗?在命令行键入
man ldd
。没有root权限我如何执行此操作?通过询问具有root权限的人:群集的IT帮助台。我希望避免这种情况。您可以创建一个到您家的符号链接目录(或您有权访问的任何地方),然后将其添加到您的LD_LIBRARY_路径中,这样做应该会奏效。您为什么不想询问群集的it帮助台?他们的工作就是帮助你做这样的事情。