title: LNK2001 error when compiling apps referencing STLport-5.1.4 with VC++ 2008
body: <p>I apologize in advance for the long post...</p>
  
  <p>I used to be able to build our VC++ solutions (we're on VS 2008) when we listed the STLPort include and library directories under VS Menu > Tools > Options > VC++ Directories > Directories for Include and Library files.  However, we wanted to transition to a build process that totally relies on .vcproj and .sln files.  These can be checked into source control unlike VS Options which have to be configured on each development PC separately.  We handled the transition for most libraries by adding the Include directories to each Project's Property Pages > Configuration Properties > C/C++ > General > Additional Include Directories, and Library directories to Linker > General > Additional Library Directories.</p>
  
  <p>Unfortunately, this approach doesn't work for STLPort.  We get LNK2019 and LNK2001 errors during linking:</p>
  
  <pre><code>Error   1   error LNK2019: unresolved external symbol "public: virtual bool __thiscall MyClass::myFunction(class stlp_std::basic_istream&lt;char,class stlp_std::char_traits&lt;char&gt; &gt; &amp;,class MyOtherClass &amp;,class stlp_std::basic_string&lt;char,class stlp_std::char_traits&lt;char&gt;,class stlp_std::allocator&lt;char&gt; &gt; &amp;)const " (?myFunction@MyClass@@UBE_NAAV?$basic_istream@DV?$char_traits@D@stlp_std@@@stlp_std@@AAVSbprobScenarioData@@AAV?$basic_string@DV?$char_traits@D@stlp_std@@V?$allocator@D@2@@3@@Z) referenced in function _main MyLibrary.obj   
  
  Error   5   error LNK2001: unresolved external symbol "public: static void __cdecl MyClass::myFunction(class stlp_std::basic_string&lt;char,class stlp_std::char_traits&lt;char&gt;,class stlp_std::allocator&lt;char&gt; &gt; const &amp;,class stlp_std::basic_string&lt;char,class stlp_std::char_traits&lt;char&gt;,class stlp_std::allocator&lt;char&gt; &gt; const &amp;,class stlp_std::basic_string&lt;char,class stlp_std::char_traits&lt;char&gt;,class stlp_std::allocator&lt;char&gt; &gt; const &amp;,class stlp_std::basic_string&lt;char,class stlp_std::char_traits&lt;char&gt;,class stlp_std::allocator&lt;char&gt; &gt; const &amp;,long,enum MyClass::MessageType,int,class stlp_std::basic_string&lt;char,class stlp_std::char_traits&lt;char&gt;,class stlp_std::allocator&lt;char&gt; &gt; const &amp;)" (?myFunction@MyClass@@SAXABV?$basic_string@DV?$char_traits@D@stlp_std@@V?$allocator@D@2@@stlp_std@@000JW4MessageType@1@H0@Z)  MyLibrary.lib   
  </code></pre>
  
  <p>This happens while linking and executable project to dependencies which are library projects.  Curiously, this does not happen while linking the library projects themselves.  Any ideas?</p>