Resolving link errors after installing Microsoft Visual Basic 2010 Express on a system where Intel® Visual Fortran Composer XE is installed


Problem : I have been using Visual Fortran Composer XE for several weeks without problems. Recently, I installed Microsoft Visual Basic 2010 Express (free download), and now I get the LNK1104 error for uuid.lib. If I uninstall Visual Basic 2010 Express I do not get the link error.


Environment : Windows 7, Intel®64, Visual Studio 2008


Root Cause : Visual Basic 2010 Express will install a new Windows SDK 7.0 probably at c:\Program Files(x86)\Microsoft SDKs\Windows\v7.0A. This Windows SDK is incomplete, not containing the lib folder. It also updated registration key of HKEY_LOCAL_MACHINE->Microsoft->Microsoft SDKs->Windows->"CurrentInstallFolder" to reference to this new Windows SDK folder. The Visual Studio development environment will use this registration key to set "WindowsSdkDir" which is used in Visual Fortran library list.


Resolution : There are two possible solutions:
1.Download and install the complete Microsoft Windows SDK manually.

2. Add your original SDK path to the Fortran project library path list:
E.g., my original SDK path before I install Visual Studio express can be got by opening a Fortran Composer XE command prompt, and run:
> echo %WindowsSDKDir
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\PlatformSDK

In Visual Studio, select Tools > Options > Intel Visual Fortran > Compilers.
- For IA32, add "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\PlatformSDK\Lib" to library list.
- For Intel 64, add "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\PlatformSDK\Lib\AMD64" to the library list.
For more complete information about compiler optimizations, see our Optimization Notice.