在Visual Studio2010 SP1中使用GLFW编译win32控制台项目时,我收到以下有关调试配置的警告:
Warnung 1 warning LNK4099: PDB "vc100.pdb" wurde nicht mit "GLFW.lib(enable.obj)" oder an "C:\path-to-project with-spaces\World\Debug\vc100.pdb" gefunden; Objekt wird verknüpft, als ob keine Debuginformationen vorhanden wären. C:\path-to-project with-spaces\World\World\GLFW.lib(enable.obj) World
13 GLFW.lib(enable.obj)、GLFW.lib(glext.obj)、GLFW.lib(image.obj)、GLFW.lib(init.obj)、GLFW.lib(input.obj)、GLFW.lib(stream.obj)、GLFW.lib(tga.obj)、GLFW.lib(win32_enable.obj)、GLFW.lib(win32_fullscreen.obj)、GLFW.lib()、()、GLFW.lib(window.obj)
最后但并非最不重要的是:
Fehler 15 error LNK1104: Datei "C:\path-to-project with-spaces\World\Debug\World.exe" kann nicht geöffnet werden. C:\path-to-project with-spaces\World\World\LINK World
发布配置正在编译。这可能仍然不足以解决我的问题,但我希望能解释一下为什么会发生这种情况。
发布于 2011-11-25 23:33:47
我已经使用正确的库进行调试配置,但不仅链接到GLFW.lib
,还链接到GLFWDLL.lib
。您可以使用GLFW.lib
将GLFW编译为可执行文件,也可以通过链接到GLFWDLL.lib
来使用DLL。我不小心同时做了这两件事。
更多信息,请访问
4.2与正确的库链接
发布于 2011-11-25 22:15:12
我不知道警告/错误在说什么,因为我不知道任何德语,但通常如果某个东西编译/链接发布但没有调试(反之亦然),这意味着你链接到了错误的库,而这个库不起作用。GLFW库是否有特定的调试库(.dll或.lib)?有时,您必须告诉VS使用一个用于项目的发布配置,另一个用于项目的调试配置。检查诸如glfw.lib和glfw_d.lib之类的内容,其中_d将指示调试库。
或者,如果你能提供链接警告/错误的英文翻译,我也许能提供更多帮助。
祝好运!
发布于 2011-11-26 09:56:52
每当使用VC++构建项目失败时,最好咨询MSDN并返回错误代码。在您的例子中是http://msdn.microsoft.com/en-en/library/b7whw3f3(v=vs.80).aspx
链接器工具警告找不到对象/库或路径中的LNK4099 PDB文件名;正在链接对象,就像没有调试信息一样链接器找不到.pdb文件。将其复制到包含object/library的目录中。
要查找与对象文件关联的.pdb文件的名称,请执行以下操作:
/extract:objectname.obj xyz.lib从库中提取目标文件。
您还可以使用/Z7进行编译,这样就不需要使用pdb,或者如果您没有要链接的对象的/DEBUG文件,则删除.pdb链接器选项。
https://stackoverflow.com/questions/8274551
复制相似问题