visual-studio-2010visual-studiovisual-c++dependenciesproject-management

Rebuild fails where Clean/Build succeeds in Visual Studio 2010


I've created two projects in a solution, a static library called vm and a console application called vmx. I use the new approach of Framework and References to create the dependency of vm for vmx. I also added x64 platforms to both projects.

Now, when I select Rebuild Solution, I get this output:

1>------ Rebuild All started: Project: vm, Configuration: Debug Win32 ------
1>  vm.c
1>  vm.vcxproj -> D:\Shared\Dynos\Build\Visual Studio 2010\Solutions\..\..\..\Lib\Win32\Debug\vm.lib
2>------ Rebuild All started: Project: vmx, Configuration: Debug Win32 ------
2>  main.c
2>LINK : fatal error LNK1104: cannot open file 'D:\Shared\Dynos\Lib\Win32\Debug\vm.lib'
========== Rebuild All: 1 succeeded, 1 failed, 0 skipped ==========

It as if vm.lib is deleted after being built before vmx is compiled.

If I select Clean Solution, then Build Solution, I get this output:

1>------ Build started: Project: vm, Configuration: Debug Win32 ------
1>  vm.c
1>  vm.vcxproj -> D:\Shared\Dynos\Build\Visual Studio 2010\Solutions\..\..\..\Lib\Win32\Debug\vm.lib
2>------ Build started: Project: vmx, Configuration: Debug Win32 ------
2>  main.c
2>  vmx.vcxproj -> D:\Shared\Dynos\Build\Visual Studio 2010\Solutions\..\..\..\Lib\Win32\Debug\vmx.exe
========== Build: 2 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========

Everything is OK.

Could someone explain to me what is happening here?

Thanks


Solution

  • I found the solution to my problem. The solution is to not to use the Frameworks and References feature in project settings and JUST use the old Project Dependencies system. I removed my reference and clicked the checkbox in the Project Dependencies dialog box and it all works now. Weird!

    I huess Frameworks and References is just for C# projects and should be avoided for C++ ones.