主题:ivf下用imsl出错了
tianhy2010
[专家分:60] 发布于 2010-10-08 17:05:00
好不容易把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个回复)
沙发
dongyuanxun [专家分:7180] 发布于 2010-10-08 18:47:00
use imsl
只有在include路径里有imsl.f90(module source) 或imsl.mod才能这样调用
板凳
asymptotic [专家分:16630] 发布于 2010-10-08 19:49:00
您应该好看看 IMSL 的帮助文档,5.0 版本后,就不用 use imsl 了。
3 楼
jstzhurj [专家分:4680] 发布于 2010-10-08 20:31:00
用 use numerical_libraries 或 use imslf90 试试。
4 楼
jstzhurj [专家分:4680] 发布于 2010-10-09 08:25:00
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 楼
tianhy2010 [专家分:60] 发布于 2010-10-10 09:59:00
试下。我检查了,路径没错。
.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 楼
tianhy2010 [专家分:60] 发布于 2010-10-10 10:01:00
[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 楼
tianhy2010 [专家分:60] 发布于 2010-10-10 10:07:00
[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 楼
kaierme [专家分:970] 发布于 2010-10-10 11:24:00
类似于这样的形式
INCLUDE 'link_fnl_shared.h'
use numerical_libraries
具体调用哪一个模块,要多看IMSL的帮助文档和例子
9 楼
jstzhurj [专家分:4680] 发布于 2010-10-12 10:41:00
试试
include 'link_fnl_shared.h'
use imsl_libraries
10 楼
faith165006 [专家分:0] 发布于 2010-11-10 17:42:00
每次编译程序,如果使用IMSL库时,需要加上两句话:
use ***_int
!DEC$ OBJCOMMENT LIB:'libiomp5md.lib'
INCLUDE 'link_fnl_static.h'
方可
我来回复