在我的 OpenGL 项目中使用 GLee 编写着色器并编译后,我收到了错误
LNK1104: cannot open file 'LIBC.lib'
。我已经尝试添加它并按照其他人的建议忽略它,但并没有解决这个问题。有没有其他方法可以解决我错过的这个问题?
2 回答
以下是几种可能的解决方案:
这可能是由于代码生成冲突。如果您
libc.lib
的线程支持与您的项目设置不同,这可能会导致问题。如果是这样,请右键单击project
,然后转到properties->C++->code generation->Runtime Library
并将值更改为Multi-threaded(MT)
。您
libc.lib
可能不支持多线程。右键单击project
,然后转到properties->Linker->Input->Additional Dependencies
并更改libc.lib
为libcmt.lib
您的应用程序静态链接同一库的多个副本。右键单击
project
,然后转到properties->Linker->Input->Ignore Specific Library
并添加libc.lib
也许你的项目需要这个库,但你的系统没有。在这种情况下,您必须
.lib
从 Microsoft 下载文件并通过右键单击添加下载文件的路径project
,然后转到properties->Linker->General->Additional Library directories
。
我在带有 Windows SDK 7.1 的 MS VC++ 2012 Express 中遇到了这个问题。
我从 DISLIN 开发人员那里找到了这个解决方案:
(i) in MS VC++\Project\<YourProject> Properties pull-down...
(ii) <YourProject>Property Pages\Ignore Specific Default Libraries : libc.lib
(iii) <YourProject>Property Pages\Additional Dependencies\Edit : libcmt.lib
答对了!