VS2005 IDE Bug with static lib dependency

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.


Answer this question

VS2005 IDE Bug with static lib dependency

  • Worthy

    It was already reported by someone else to MS at http://lab.msdn.microsoft.com/productfeedback/viewfeedback.aspx feedbackid=b1a2ab99-5e7a-42a6-a885-e0dd9026742a. MS responded defending the bug, and I responded to that saying why I thought it was still a bug.

  • 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

    I understand I can do this manually but since the static lib is in my project I want the project dependencies to work correctly in the project. If I build the debug solution in the project I do not want the release solution to think it also must be built because it thinks that other projects in the solution are depending on the wrong version of my static library.

  • caglar ozkul

    Create a simple demo and report a bug at:

    http://lab.msdn.microsoft.com/productfeedback/Default.aspx



  • VS2005 IDE Bug with static lib dependency