[cmake-developers] VS2010 fortran composer

Biddiscombe, John A. biddisco at cscs.ch
Mon Mar 7 09:17:02 EST 2011


Bill

> What if you run DevEnv.exe from the command line with the /Upgrade on 
> the vfproj file?  Does it change it?  Does it work with MSBuild after?

No change. Still fails.

>http://software.intel.com/en-us/forums/showthread.php?t=81140
>This is explained in the release notes for the Fortran compiler.
>Please read the section on VS2010.."

yes I found this report - unfortunately it does not tell us anything useful. It deals with dependencies, which is different from our problem. I checked to see the the ALL_BUILD project was referencing the cmTryComile, (and it is), but changing this makes no difference - when running msbuild.exe we only treat the cmtrycompile and deleting all the other stuff doesn't solve anything.

I'll file a bug report with intel and for now, use makefiles to kick off the generator and then switch.- could we not just use nmake always for the compiler detection step?

JB

snippet from release notes below

3.6.2 Adjusting Project Dependencies
If you are converting a project from an earlier version of Visual Studio and had established
Project Dependencies, these are converted to References by Visual Studio 2010. A Fortran
project that is referenced by a C/C++ project will prevent the C/C++ project from building, with
an MSB4075 error. To solve this:
1. Right click on the C/C++ project and select References.
2. If any Fortran project is shown as a reference, click Remove Reference. Repeat this for
all Fortran projects shown as a reference. Click OK.
3. Repeat the above steps for any other C/C++ project
Now you have to reestablish project dependencies.
1. Right click on the C/C++ project and select Project Dependencies.
2. Check the box for each project that is a dependent of this project.
3. Click OK.
4. Repeat the above steps for any other C/C++ project that has dependencies.
Unlike earlier versions of Visual Studio, Visual Studio 2010 does not automatically link in the
output library of dependent projects, so you will need to add those libraries explicitly to the
parent project under Linker > Additional Dependencies. You can use the Visual Studio macros
$(ConfigurationName) and $(PlatformName) as required to qualify the path. For example:
..\FLIB\$(ConfigurationName)\FLIB.lib
Where $(ConfigurationName) will expand to Release or Debug, as appropriate. Similarly,
$(PlatformName) will expand to Win32 or x64 as appropriate.



More information about the cmake-developers mailing list