如何确保您针对STLport构建

时间:2010-05-05 00:01:11

标签: c++ visual-c++ stlport

我正在使用Visual C ++ 2005来构建一些库和一个可执行文件。 我将STLport位置包含在库的附加包含路径中,并将库包含在链接器的输入中以供可执行文件使用。

但是,如果没有stl端口命名空间,那么库似乎需要使用stl符号(例如字符串)。 这会导致链接器错误。

这些是来自2个库和可执行文件命令行的相关行:

/Od /I "..\Junctions\fo_fid_3rdParty\STLport-5.1.0\stlport"

/Od /I "..\Junctions\Includes\fo_fid_3rdParty\STLport-5.1.0\stlport"

/OUT:"..\ET_BUILD\vc8\Debug\bin\SFGWDealerwebFixAutorecD.exe" /INCREMENTAL:NO /NOLOGO 
..\junctions\libs\fo_fid_3rdParty\STLport-5.1.0\lib\stlportstld_vc8.5.1.lib 

以下是错误示例。     错误7错误LNK2001:未解析的外部符号“public:virtual bool __thiscall Springfield :: CClientFramework :: ProviderRequest(class std :: basic_string,class std :: allocator> const&,class std :: basic_string,class std :: allocator > const&,class std :: basic_string,class std :: allocator> const&)“(?ProviderRequest @ CClientFramework @ Springfield @@ UAE_NABV?$ basic_string @ DU?$ char_traits @ D @ std @@ V? $ allocator @ D @ 2 @@ std @@ 00 @ Z)FixAutorec.lib

此符号Springfield :: CClientFramework :: ProviderRequest来自库ClientArchitecture.lib 这是dumpbin.exe显示此符号的方式:     (public:virtual bool __thiscall Springfield :: CClientFramework :: ProviderRequest(类stlpd_std :: basic_string,类stlpd_std :: allocator> const&,类stlpd_std :: basic_string,类stlpd_std :: allocator> const&,类Springfield :: IDataStoreNode const *))

请注意,要查找的符号定义其字符串std :: basic_string。 而目标将符号定义为stlpd_std :: basic_string。

感谢

0 个答案:

没有答案