回 帖 发 新 帖 刷新版面

主题:ivf下用imsl出错了

好不容易把ivf11.038和imsl都装上了,而且有些程序已经通过。但是为什么
use imsl
时候会出错呢?
出错信息:
Error    1 error #7002: Error in opening the compiled module file.  Check INCLUDE paths.   [IMSL]    E:\ATK\taimidu\norand.f90    2    

Error    2    Compilation Aborted (code 1)    E:\ATK\taimidu\norand.f90    1    
我检查了,imsl的路径对啊。怎么会这样呢?[em7][em7][em7][em7][em7][em10][em10][em10][em10][em10][em17][em17][em17][em17][em17]

回复列表 (共10个回复)

沙发

use imsl
只有在include路径里有imsl.f90(module source) 或imsl.mod才能这样调用

板凳

您应该好看看 IMSL 的帮助文档,5.0 版本后,就不用 use imsl 了。

3 楼

用 use numerical_libraries 或 use imslf90 试试。

4 楼

To use the IMSL* libraries from the Microsoft Visual Studio* IDE on systems using IA-32 architecture:

1.Add the IMSL Include and Library directories to the list of directories searched
a.In the Tools menu, choose Options.

b.Click Intel(R) Fortran.

c.Under Project Directories, click the list button ("...") for Libraries to open the list of libraries directories.

d.In the Set Directory List window that opens, add the full path to the IMSL Libraries folder. The default is C:\Program Files\VNI\imsl\fnl600\IA32\lib. Click OK.

e.Now click the list button for Includes and, in the same manner, add the full path to the IMSL Include folder. The default is C:\Program Files\VNI\imsl\fnl600\IA32\include\dll.

f.Click OK if you have changed any information.

2.To pass IMSL libraries to the Linker, add one of the following lines to your main program or any convenient source file for your application. This needs to be specified only once per application.

* INCLUDE 'link_fnl_static.h' (To use the static library form of the libraries)

* INCLUDE 'link_fnl_shared.h' (To use the dynamic link library form of the libraries)

* INCLUDE 'link_fnl_static_hpc.h' To use the static library form of the libraries and the Intel MKL)

* INCLUDE 'link_fnl_shared_hpc.h' (To use the dynamic link library form and the Intel MKL)

* INCLUDE 'link_mpi.h' (To use the MPIC, the static library form of the libraries and the MPI version of the error handler)

* INCLUDE 'link_mpi_hpc.h' (To use MPI, the static library form of the libraries, the MPI version of the error handler and the Intel MKL)

* INCLUDE 'link_mpis.h' (To use MPI, the static library form of the libraries and the scalar version of the error handler)

* INCLUDE 'link_mpis_hpc.h' (To use MPI, the static library form of the libraries, the scalar version of the error handler and the Intel MKL)

If you want to specify the libraries explicitly, select Project>Add Existing Item..., change Files of Type to All Files, browse to the IMSL Libraries folder, and add the appropriate libraries as explained in IMSL Include File and Library Naming Conventions and Redistributables.

5 楼


试下。我检查了,路径没错。
.In the Set Directory List window that opens, add the full path to the IMSL Libraries folder. The default is C:\Program Files\VNI\imsl\fnl600\IA32\lib. Click OK

Now click the list button for Includes and, in the same manner, add the full path to the IMSL Include folder. The default is C:\Program Files\VNI\imsl\fnl600\IA32\include\dll.

然后将几条几条语句都加上:
program main
  use IMSL
 INCLUDE 'link_fnl_static.h' 
 INCLUDE 'link_fnl_shared.h' 
 INCLUDE 'link_fnl_static_hpc.h' 
 INCLUDE 'link_fnl_shared_hpc.h' 
 INCLUDE 'link_mpi.h' 
 INCLUDE 'link_mpi_hpc.h' 
 INCLUDE 'link_mpis.h' 
 INCLUDE 'link_mpis_hpc.h' 
  implicit none

然后将console放在imsl IMSL Include File 目录下,还是老问题。哎[em7][em7][em7][em7][em8][em8][em8]

6 楼

[quote]use imsl
只有在include路径里有imsl.f90(module source) 或imsl.mod才能这样调用[/quote]

在include路径里,我只设置了
C:\Program Files\VNI\imsl\fnl600\IA32\include\dll

怎么设置imsl.f90(module source)这个路径?好像imsl6.0没有这些文件吧?

7 楼

[quote]use imsl
只有在include路径里有imsl.f90(module source) 或imsl.mod才能这样调用[/quote]

搜索imsl文件夹,没找到imsl.mod这个文件

[em75][em75][em75][em75][em75][em31][em31][em31][em21][em21][em21][em21][em21][em68][em68][em68][em57][em57][em57]

8 楼

类似于这样的形式
  INCLUDE 'link_fnl_shared.h' 
  use numerical_libraries
具体调用哪一个模块,要多看IMSL的帮助文档和例子

9 楼


试试

  include 'link_fnl_shared.h' 
  use imsl_libraries

10 楼


每次编译程序,如果使用IMSL库时,需要加上两句话:
      use ***_int
      !DEC$ OBJCOMMENT LIB:'libiomp5md.lib'
      INCLUDE 'link_fnl_static.h'
方可

我来回复

您尚未登录,请登录后再回复。点此登录或注册