| Last Modified On : | February 4, 2009 6:53 AM PST |
Rate |
|
This article explains how to install, configure and use the IMSL* Fortran Numerical Library, as provided with Intel® Visual Fortran Professional Edition with IMSL*, version 11. It is not applicable to versions of IMSL obtained from other sources.
This article supplements the on-disk documentation provided at Building Applications > Using Libraries > Using the IMSL* Mathematical and Statistics Libraries. Please refer to that text for more detail on using IMSL.
The IMSL* libraries are supplied on a second DVD in boxed products and as separate downloads from the Intel Software Development Products Registration Center. There are three installation files, one for each target architecture. The file names are of the form:
You must install the Intel Visual Fortran compiler before installing the IMSL libraries. If you will be developing applications to run on more than one architecture, we recommend that you install the IMSL package for your development computer's architecture last.
Intel Visual Fortran 11.0.061 and 11.0.066 does not automatically establish the IMSL environment when the command line Build Environment scripts are run. Until this is corrected in a future update, you will have to edit the compiler .bat files manually to also set the IMSL environment.
For the IA-32 architecture target, open the file
C:\Program Files\Intel\Compiler\11.0\066\fortran\Bin\IA32\ifortvars_IA32.bat
in Notepad or another text editor. Add the following line at the end of the file:
IF EXIST "C:\Program Files\VNI\imsl\fnl600\IA32\bin\fnlsetup.bat" @call "C:\Program Files\VNI\imsl\fnl600\IA32\bin\fnlsetup.bat"
Make sure that the added text is contained on one line only.
For the Intel 64 architecture target, the file to edit is
...\Intel64\ifortvars_intel64.bat
or ...\IA32_Intel64\ifortvars_ia32_intel64.bat
and the line to add is:
IF EXIST "C:\Program Files\VNI\imsl\fnl600\Intel64\bin\fnlsetup.bat" @call "C:\Program Files\VNI\imsl\fnl600\Intel64\bin\fnlsetup.bat"
For the IA-64 architecture target, the file to edit is
...\IA64\ifortvars_ia64.bat
and the line to add is:
IF EXIST "C:\Program Files\VNI\imsl\fnl600\IA64\bin\fnlsetup.bat" @call "C:\Program Files\VNI\imsl\fnl600\IA64\bin\fnlsetup.bat"
It may be necessary to add the paths for the IMSL INCLUDE and library files to Visual Studio.
C:\Program Files\VNI\imsl\fnl600\IA32\lib (for IA-32 architecture target)C:\Program Files\VNI\imsl\fnl600\Intel64\lib (for Intel 64 architecture target or)C:\Program Files\VNI\imsl\fnl600\IA64\lib (for IA-64 architecture target) C:\Program Files\VNI\imsl\fnl600\IA32\include\dll (for IA-32 architecture target)C:\Program Files\VNI\imsl\fnl600\Intel64\include\dll ( for Intel 64 architecture target or)C:\Program Files\VNI\imsl\fnl600\IA64\include\dll for (IA-64 architecture targe) If you were using the IMSL libraries with Intel Visual Fortran 10.x, you may need to make a change to your source or build options to reflect the change in the default OpenMP* libraries used by the Intel Fortran compiler.
If you followed the recommendation of Visual Numerics* and enabled OpenMP processing for your application, you will probably not have to make changes.
If you were instructed to add to a source file the line:
!DEC$ OBJCOMMENT LIB:'libguide.lib'
change this to:
!DEC$ OBJCOMMENT LIB:'libiomp5md.lib'
If you added libguide.lib to your build options in other ways, replace it with libiomp5md.lib. You must not specify the /Qopenmp-libs:legacy option as this is incompatible with IMSL.
If you are building a new application, you will need to select one of the sets of IMSL libraries and add the necessary line(s), as described in the compiler documentation, in one of your Fortran source files. Most applications will use these:
INCLUDE 'link_fnl_static.h'
!DEC$ OBJCOMMENT LIB:'libiomp5md.lib'
Problem: When compiling, you receive an error similar to:
error #5102: Cannot open include file 'link_fnl_static.h' error #7002: Error in opening the compiled module file. Check INCLUDE paths.
Resolution:
Follow the steps in the sections above for configuring for use from the command line or from Microsoft Visual Studio.
Problem:
When linking, you receive errors similar to:
imsls_err.lib(e1pos.obj) : error LNK2001: unresolved external symbol ___kmpc_threadprivate_cached
Resolution:
Add the line:
!DEC$ OBJCOMMENT LIB:'libiomp5md.lib'
to one of your Fortran sources. An alternative is to enable OpenMP processing (/Qopenmp), but this may have unwanted side effects if you are not using OpenMP in your application.
If you have comments on this article, specifically, please add them below. If you need assistance using the product, please visit our User Forum or see this support page for further options.
| February 4, 2009 6:57 AM PST
Steve Lionel (Intel)
| christ, we're helping you through the user forum. We'll continue the conversation there. |
| May 24, 2009 5:48 PM PDT
Matt |
Hi, I followed the instructions for this page. Nevertheless, while attempting to a routine from the IMSL library, the I hace the following compiling error: This module file was generated for a different platform or by an incompatible compiler or compiler release. It cannot be read. I'm running this with the VF 2005 using the 10.1.030 compiler and the IMSL IA64. I would appreciate help. Thanks, |
| May 26, 2009 7:12 AM PDT
Steve Lionel (Intel)
|
Matt, you probably did not want the IA-64 IMSL - that's for use when building applications to run on Intel Itanium processors. If you are building for "x64 Windows", you want the "Intel 64" variant and should uninstall the IA-64 IMSL. If you need more help, please post in the user forum. |
| August 27, 2009 1:03 PM PDT
Dave |
I have a problem on using the IMSL subroutine as a Frotran dll with excel VBA. I tried to solve a set of differential equations. When I wrote my own differential equation solver in Fortran and built the dll. Everything worked fine. However, when I included the IMSL ODE solver in the dll and linked with VBA to create a VBA function. The custom built VBA function only worked one time in excel. Whenever I tried to use the same VBA function the second time in the same excel workbook, excel would shut down automatically. Can anyone provide some comments or suggestions on this problem? Thanks Dave |
| October 5, 2009 9:27 AM PDT
elenar
|
License agreement clarification. I would like to buy Intel Visual Fortran + IMSL. May I install it on my desktop and on my laptop? Intel Visual Fortran user license permit this double installation, what about IMSL? I've found only this license agreement but refer to an older Visual Fortran Version http://software.intel.com/en-us/articles/imsl-fortran-library-license-agreement/ |
| October 5, 2009 9:42 AM PDT
Steve Lionel (Intel)
|
elenar, if you have the "Single User" license you may install the compiler with IMSL on your laptop as well. The license agreement you referenced is still current (IMSL Fortran Numeric Library 6.0 is what is provided for use with Intel Visual Fortran 11.1.) Dave, I'd suggest that you ask your question in the user forum at http://software.intel.com/en-us/forums/intel-visual-fortran-..... r-windows/ |

cftac
370
Status Points:
320
On both machines, no interpretation of your instructions above results in 'link_fnl_static.h' being read when I try to use the IDE.
christ