Before I report what I believe to be a bug in the IDE's dependency code regarding static libraries I will report it here. Maybe there is a workaround or maybe, even though the IDE's shows it as a bug, it is not really occuring as one in actual practice.
As a simple example for a more complex actual problem, I create a solution with a C++ CLR Class Library and a Win32 static library. I then setup my project dependencies so that the class library depends on the static library. My solution, by default is setup for a Debug build.
When I open the properties for the properties for the class library, the linker command line shows that the static library has been added to the command in its relative path debug location. If I then switch my property page to look at the release settings I notice that the linker command shows once again that the static library has been added to the command but it is still the relative path debug location which shows.
Clearly since the IDE is smart enough to automatically add the static library to the linker command line, it should add the location of the debug version when I show the debug properties and the location of the release version when I show the release properties.
Still further, if I close the class library's properties page, change the solution to a Release build, and then re-open the properties for my class library, now whether I look at the linker command line properties for the debug or release version, the path to my static library is always set to the release version.
Surely changing the properties of my class library's Linker command line for its debug and release set of properties should not depend on the actual solution build.
If anybody has seen this, knows what is going on here, and whether this is an actual bug or not, I would like to know.

VS2005 IDE Bug with static lib dependency
Worthy
John George-MSFT
I never had look with all this static library stuff. Even with VS6 it never worked in an ideal way.
I always used to change the lib-names for debug und release version. (Debug as a trailing D). The output is always done into one directory were all my libs are located.
I add the libs names manually in the linker section.
Smaller code segements are never placed in libraries, they are always shared via the source control system.
PS: I know this is not a solution, its a stable workarround for me.
Satan_chevalier
caglar ozkul
Create a simple demo and report a bug at:
http://lab.msdn.microsoft.com/productfeedback/Default.aspx