Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

Use omp_lib for x64 compiling

David_DiLaura1
1,266 Views

Steve, Colleagues,

I  have successfully used OpenMP to create a threaded IA32 version of an executable. The code contains "use omp_lib" since I'm calling a few OpenMP functions.  I note that in the Project Property Pages the "Additional Include Directories" is blank in for both WIN32 and x64 OS targets. Before the current attempt to thread the code, I have been producing IA32 and x64 versions of executables from the same source; I have simply changed the target OS; it has not been necessary to explicitly point to different library places.

Now, with the threaded code, if I do nothing but change target OS from WIN32 to x64 (using the drop-down in VS 2010), then the OpenMP library is not found and I get the following message:

error #7002: Error in opening the compiled module file.  Check INCLUDE paths.   [OMP_LIB]

I am using VS 2010, and the lasted compiler: XE 14.0.3.202

BTW: if I comment out the "use omp_lib" line of code, I get no error message(s) but neither the compiler nor linker note that incorrect code is being generated. Jim Dempsey has commented on this before in this forum.

Suggestions?

David

0 Kudos
4 Replies
TimP
Honored Contributor III
1,266 Views

The include path should appear without requiring any action from you, under the command prompt:

c:\Program Files (x86)\Intel\Composer XE 2013 SP1\compiler\include\intel64;

I haven't tried an installation on other than C: for many versions.

I don't know why the GUI wouldn't also pick up this path.  \intel64 subfolder must include the .mod files built for intel64.

USE omp_lib is required to supply integer or real(real64) type declaration for omp_ functions and for interface checking.

0 Kudos
Steven_L_Intel1
Employee
1,266 Views

Module omp_lib is provided with the compiler. You should find $(IFortInstallDir)compiler\include\intel64 listed under Tools > Options > Intel Composer XE > Visual Fortran > Compilers > Includes when the x64 platform is selected. Check that the folder C:\Program Files (x86)\Intel\Composer XE 2013 SP1\compiler\include\intel64 exists and that omp_lib.mod is in it.

0 Kudos
David_DiLaura1
1,266 Views

Steve,

That is the problem. The omp_lib.mod is not in the x64 include folder; thought it is in the IA32 include folder. Apparently it was never installed. I reran the installer in repair mode, but that didn't install the file. Do you know whether I can use the version from the previous release of the compiler, or from the beta version of 15.0?

David

0 Kudos
Steven_L_Intel1
Employee
1,266 Views

Yes, you can use the file from the previous version, but it should be there. I'd suggest an uninstall and reinstall, or you can wait for the final 15.0 release.

0 Kudos
Reply