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

IVF 9.1: Single-Thread in VS2005

christianmeiners
Beginner
620 Views
I have installed the new Fortran compiler Version 9.1 and the corresponding integrations for Visual Studio 2005.
Building single-threaded programs from the command line works fine. But, when I open a new Fortran project in VS 2005 (Win32 console application), I cannot choose to link against the single-threaded librarys in the "Property Pages". Is this related to improper installation or what am I doing wrong?
0 Kudos
2 Replies
Steven_L_Intel1
Employee
620 Views
From the release notes:

Static, Single-Threaded Libraries Not Available in Visual Studio 2005

In Microsoft Visual Studio 2005, the static, single-threaded Visual C++ libraries libc.lib and libcd.lib have been removed. If you specified that the Intel Fortran Compiler should use Visual Studio 2005 for command-line building, and attempt to build an application with the static, single-threaded library, which was the default in earlier versions, you will get a warning from the compiler as follows:

ifort: warning: option '/Qvc8' or higher used with '/ML' is not supported

Note that /Qvc8 was added to ifort.cfg at install time if you specified command line integration with Visual Studio 2005. This tells the ifort compiler driver that you are using Visual Studio 2005.

If you attempt to link such an application you will get an error from the linker that libc.lib or libcd.lib is not found. For example:

LINK : fatal error LNK1104: cannot open file 'LIBC.lib'

To resolve this, specify the threaded and/or DLL forms of the run-time libraries. For example:

* /libs:static /threads
* /libs:dll
* /MT

If you do not specify otherwise, the ifort default for use with Visual Studio 2005 is /libs:static /threads which is the same as /MT.

This issue may also affect projects which are built from the Microsoft Visual Studio IDE. In this case, change the project property Fortran..Libraries..Use Run-Time Library to the desired new value.
0 Kudos
Steven_L_Intel1
Employee
620 Views
It "works" from the command line because the command line default changed so that you're linking to the multithread libraries.
0 Kudos
Reply