Visual Studio 2010:合并库和调试符号

时间:2012-08-30 09:13:39

标签: visual-studio-2010 linker pdb

我正在使用visual studio 2010创建大约十几个小型库,我将它们合并到一个巨大的库中。

即使我没有使用pdb文件,也无法解决为合并库设置调试信息的问题。

我尝试使用'/ Z7'选项编译所有(obj文件中的调试信息),但链接器仍在抱怨缺少pdb文件!

我使用以下代码编译单个C ++文件:

C:\Program Files\Microsoft Visual Studio 10.0\VC\bin\CL.exe /c /I..\Logging
    /Z7 /nologo /W4 /WX /MP /Od /Oy- 
    /D WIN32 /D _DEBUG /D _LIB /D USING_RV /D _CRT_SECURE_NO_WARNINGS /D _UNICODE /D UNICODE 
    /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /GR 
    /Fo"D:\Work\branches\DSC_LONS00107672\C++\Libs\Runtime\bin\Win32\Debug\\" 
    /Gd /TP /analyze- /errorReport:queue Alert.cpp ..other...sources... /MP 

我用:

创建小型库
 C:\Program Files\Microsoft Visual Studio 10.0\VC\bin\Lib.exe 
      /OUT:"D:\Work\branches\DSC_LONS00107672\C++\Bin\Win32\Debug\Runtime.lib" 
      /NOLOGO /MACHINE:X86 
      D:\Work\branches\DSC_LONS00107672\C++\Libs\Runtime\bin\Win32\Debug\Alert.obj
      ...other..objects... 

和巨大的图书馆:

C:\Program Files\Microsoft Visual Studio 10.0\VC\bin\Lib.exe     
    /OUT:"D:\Work\branches\DSC_LONS00107672\output\C++\lib\Debug\DSC.lib" 
    bridging.lib ...other...small...libraries
    /LIBPATH:D:\Work\branches\DSC_LONS00107672\C++\ThirdParty\zlib\lib\Win32\Debug\
    /NOLOGO /MACHINE:X86
    D:\Work\branches\DSC_LONS00107672\C++\DSC\bin\Win32\Debug\DSC.obj

然后我将结果库复制到一个库文件夹中,可以访问该文件夹以链接其他程序。

但是当我用这个库链接任何程序时,我收到很多警告,如:

DSC.lib(ActionType.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 
    'DSC.lib(ActionType.obj)' or at
    'D:\src\VS2010\DSC\TestApps\LQ2Tester\bin\x64\Debug\vc100.pdb'; 
    linking object as if no debug info

我无法调试应用程序

我错过了什么?

0 个答案:

没有答案