- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I just bought the IVF XE2016 Professional with IMSL and set up the library (library and include directory) for IMSL/
However, I could not compile when I try to link the IMSL,
Severity Code Description Project File Line
Severity Code Description Project File Line
Error error code 23 (returned by OpenValidateX) opening pdb Debug\vc140.pdb H:\users\myangadmin\Documents\Visual Studio 2015\Projects\Console3\Console3\Console3.f90 1
Error error #7881: This module file was generated for a different platform or by an incompatible compiler or compiler release. It cannot be read. [NUMERICAL_LIBRARIES] H:\users\myangadmin\Documents\Visual Studio 2015\Projects\Console3\Console3\Console3.f90 2
it seems "use numerical_libraries" is not valid in the new program any more. Am I right?
If so, what is the new syntax? Thanks
see the following program.
program Console3
use numerical_libraries
include 'link_fnl_shared.h'
implicit none
print *, 'Hello World'
end program Console3
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Did you upgrade from a previous version of IFort+IMSL? Do you have more than one version of IMSL installed? Check if the IMSL-related environmental variables (FNL_DIR, etc.) and/or Visual Studio defaults are set correctly to use the 7.0.1 version of IMSL. The modules in the 7.0.1 IMSL installation have a module version 14.0 in them, but they work fine with the 16.0.0.110 compiler.
"USE NUMERICAL_LIBRARIES" should work fine for older IMSL routines, but you are supposed to use USE statements for specific routine interfaces, or to use "USE IMSL_LIBRARIES' in new code.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This is not an upgrade, it is a new purchase, fresh installation on a new desktop.
Here, I got the following 3 errors. It seems the program can not open the following file vc140.pdb, regardless of
"use numerical_libraries " or "use IMSL_libraries".
The errors are exactly the same.
Any idea?
Thanks
Severity Code Description Project File Line
Error error code 23 (returned by OpenValidateX) opening pdb Debug\vc140.pdb H:\users\myangadmin\Documents\Visual Studio 2015\Projects\Console3\Console3\Console3.f90 1
Severity Code Description Project File Line
Error Compilation Aborted (code 1) H:\users\myangadmin\Documents\Visual Studio 2015\Projects\Console3\Console3\Console3.f90 1
Severity Code Description Project File Line
Error error #7881: This module file was generated for a different platform or by an incompatible compiler or compiler release. It cannot be read. [IMSL_LIBRARIES] H:\users\myangadmin\Documents\Visual Studio 2015\Projects\Console3\Console3\Console3.f90 5
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The PDB fail is a red herring (a false lead)
What's interesting is this fail:
Error error #7881: This module file was generated for a different platform or by an incompatible compiler or compiler release. It cannot be read. [IMSL_LIBRARIES]
This means that the compiler is finding the file "IMSL_LIBRARIES.MOD", but it is in an unexpected format.
A common reason is an incorrect architecture, that is, the 32-bit compiler finding the 64-bit mod files , or vice versa.
You said this:
I just bought the IVF XE2016 Professional with IMSL and set up the library (library and include directory) for IMSL/
What did you do to set it up? Is there a chance that you set the INCLUDE path to be inconsistent with the compiler being used?
Are you using Visual Studio to build, or the command line? If Visual Studio, could you post the build log for us to look at?
thanks -
--Lorri
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am using Microsoft Visual Studio 2015 to build it.
But I do not know what log you are asking for. How do I get it for you?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
There is a file called "buildlog.htm" that is a by-product of the build process. Usually, after a build, you can see a link to the file in the VS pane where the build progress is displayed.
Have you gone through the steps detailed on the page https://software.intel.com/en-us/articles/installing-and-using-the-imsl-libraries under the heading "Configuring for Use from Microsoft Visual Studio"?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I configured IMSL with Microsfot Visual Studio for earlier version. I assume there are no other changes.
Here is the buildlog.htm
Build Log |
Build started: Project: Console3, Configuration: Debug|Win32 |
Output |
Deleting intermediate files and output files for project 'Console3', configuration 'Debug|Win32'. Compiling with Intel(R) Visual Fortran Compiler 16.0 [IA-32]... ifort /nologo /debug:full /Od /warn:interfaces /module:"Debug\\" /object:"Debug\\" /Fd"Debug\vc140.pdb" /traceback /check:bounds /check:stack /libs:dll /threads /dbglibs /c /Qlocation,link,"D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\\bin" "H:\users\myangadmin\Documents\Visual Studio 2015\Projects\Console3\Console3\Console3.f90" H:\users\myangadmin\Documents\Visual Studio 2015\Projects\Console3\Console3\Console3.f90(2): error #7881: This module file was generated for a different platform or by an incompatible compiler or compiler release. It cannot be read. [NUMERICAL_LIBRARIES] use numerical_libraries --------^ error code 23 (returned by OpenValidateX) opening pdb Debug\vc140.pdb compilation aborted for H:\users\myangadmin\Documents\Visual Studio 2015\Projects\Console3\Console3\Console3.f90 (code 1) Console3 - 3 error(s), 0 warning(s) |
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
As Lorri says. I can reproduce a message just like that if, under tools/options/Intel Compilers and Tools/Visual Fortran / Includes, I put
C:\Program Files (x86)\VNI\imsl\fnl701\Intel64\include\dll instead of C:\Program Files (x86)\VNI\imsl\fnl701\IA32\include\dll
(I was using VS2012).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
For the options of include and library folder, I include both IA32 and Intel64
I got no problem for the older version of IVF, now I have to delete Intel64 from the both folders.
I also checked : it works fine whether I use "use numerical_libraries" or "use IMSL_libraries".
It seems to me that even now, the default executable program is still 32 bit, right? Is there big difference between 32 bit and 64 bit in computation performance? Since now, the 64 bit OS is prevalent, why does Intel still stick to 32?
Again, thank you all for your help!
include folder
C:\Program Files (x86)\VNI\imsl\fnl701\Intel64\include\dll
C:\Program Files (x86)\VNI\imsl\fnl701\IA32\include\dll
library folder
C:\Program Files (x86)\VNI\imsl\fnl701\Intel64\lib
C:\Program Files (x86)\VNI\imsl\fnl701\IA32\lib
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
bluesz wrote:
For the options of include and library folder, I include both IA32 and Intel64
If you listed both include folders as directories to be searched (for include files and module files), especially if you listed the wrong one first followed by the correct one, that would explain all the problems that you described in this thread. Specify the IA32 directory in the Win32- or 32-bit console project. Similarly specify only the Intel64 directory in the x64 project.
It seems to me that even now, the default executable program is still 32 bit, right? Is there big difference between 32 bit and 64 bit in computation performance? Since now, the 64 bit OS is prevalent, why does Intel still stick to 32?
The default is set to IA32 because that configuration works on 32-bit and 64-bit Windows. You can change your default configuration to X64 if you wish.
There is not much performance difference in terms of running time. X64 programs can sometimes be slower because there are more bytes to flow through the memory and caches than in the 32-bit version. However, 64-bit programs allow you to work with larger data sets with access to more memory, beyond the limits in 32-bit Windows.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Intel64 programs have access to twice as many registers as IA-32 programs, and this can make some difference to performance.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page