A: 

Without knowing any other detail about your solution it is hard to tell, however Rebuild All, might be helpful. This situation can sometimes occur when there are mixed object files for different architectures.

You might also want to consider using "References" instead of "Dependencies"

EDIT:

After what you have posted it seems that your linkage to standard libraries is inconsistent. Could it be that one of the project links standard libraries statically while others dynamically? (See project properties->linker) Or one to the release runtime, while others to debug? (though the last one should be possible, with caveats)

EFraim
I think that References are only used for .NET projects. While the OP didn't state this one way or the other, I'd guess that he is writing in unmanaged C++.
Andy
I use references in unmanaged C++, they work flawlessly.
EFraim
A: 

I presume the linker errors you are getting are for "unresolved symbols"?

If using static libraries (i.e. .lib file), you will need to add the library to the linker input, so that at linkage time the symbols can be linked against. If you don't do this, you'll get an unresolved symbol:

  1. Right-click on the project, and select Properties.
  2. Select Configuration Properties->Linker->Input
  3. Enter the library name (e.g. filename.lib) under Additional Dependencies.
LeopardSkinPillBoxHat
When you add a Project Dependency in Visual Studio, it automatically links to the output of the project for you (it does not add the .lib to the Properties, though).
Andy
A: 

Are the functions in your other projects exported? If they aren't exported, then there is nothing to link to from the main exe, so that would cause the errors. See Exporting from a DLL Using __declspec(export) for more information.

Andy
+2  A: 

It is difficult to answer without knowing all the details about your solution, but I will assume your "other" project are set up to produce a .lib file, and the main project then links all these lib files. If that is the case then a possible cause for the errors you are getting is that your projects link to different versions of the runtime library.

Try to change all the projects to use the same version of the runtime library, under configuration options/c/c++/Code Generation/Runtime library, choose either Multi-threaded Debug DLL or Multi-threaded Debug (for your debug configuration).

Dani van der Meer
A: 

The errors you are getting are 'error LNK2005' where a symbol in the library you are linking (msvcprtd.lib) has already been defined in another library (for example panels.lib). If you add panels.lib to the 'ignore specific library' field (in VS2008 Configuration Properties--> Linker--> Input -->Ignore specific libraries), the errors will stop.

Richard