Hi there, I am trying to run a Fortran code that requires the use of IMSL Numberical Libraries.
I have installed Visual Studio 2013, Intel Parallel Studio XE 2015 and Fortran Numerical Library 7.1.0.
When I run the code I get the error:
I get the error: error #7002: Error in opening the compiled module file. Check INCLUDE paths. [NUMERICAL_LIBRARIES]
After searching a bit on this forum, I went to Tools -> Intel Compilers and Tools -> Visual Fortran -> Compilers and did the following:
You probably have two issues to fix. The first is that FNL_DIR is probably not defined in the global environment. That would explain why the compilation worked when you hard-wired the directory names in your project.
The second issue is that you have only specified the INCLUDE and LIB paths to access the libraries, but you have not told the VS build system that the IMSL libraries should be used at link time. In other words, you have told VS the "where to look" but not the "what to use".
Indeed you are probably right.
After some search on the forum I added the lines:
!DEC$ OBJCOMMENT LIB:'libiomp5md.lib'
And apparently it is working. I do need to double check though.
You probably have the 7.1 IMSL from Roguewave, but it is probably not much different in layout from the 7.0.1 version, from Intel or Roguewave. The link_fnl_static.h file simply has a number of libraries listed with OBJCOMMENT, such as !dec$ objcomment lib:'imsl.lib', etc.
Note that using the static libraries will cause your EXEs to be huge. If that is a problem, you can use INCLUDE link_fnl_shared.h instead.
Hi mecej4, thanks for your answer. You are again correct, I am using 7.1 IMSL (I mentioned it on the first post). After the changes the code compiles, but actually it exits when it calls the function DNORDF which if my understanding is correct, is part of the IMSL libraries. Not sure why. Maybe the libraries are still not recognized?
Edit: Apparently there is a problem with the license. Let me look through it and I will update this post.