freeglut.dll 丢失

Posted

技术标签:

【中文标题】freeglut.dll 丢失【英文标题】:freeglut.dll missing 【发布时间】:2012-01-04 03:33:40 【问题描述】:

我正在阅读 OpenGl 的优秀作品,但在第一个三角形程序中它不会运行。 该程序编译得很好,但是当我运行它时,它给了我错误消息 freeglut.dll is missing from your computer。我下载了它并把它放在正确的目录中,它说MSVCR71.dll丢失了,所以我下载了它并将它放在正确的目录中,它开始说“程序入口点__glutCreateWindowWithExit不能位于动态中链接库 freeglut.dll。”有谁知道我做错了什么?我听从了书中告诉我的所有指示。

【问题讨论】:

你不应该只下载这样的 DLL。对于freeglut.dll,您需要与您使用的相应.lib 文件精确匹配的版本。对于mscvr71.dll,需要整个运行时作为匹配的版本集,并且需要正确安装。 @LightnessRacesinOrbit:不,我删除了它(动物标本剥制术) 将下载时附带的 dll 放在与您的程序相同的目录中。 【参考方案1】:

您不能只是从 interwebtubes 中抓取随机 DLL,然后将它们转储到您的 PC 上。有一些版本问题需要考虑,你完全绕过了。当 MSVC 运行时依赖项没有链接起来时,它应该是一个提示。

完整地正确安装 freeGLUT 包。

【讨论】:

【参考方案2】:

我也遇到了同样的问题。请按以下步骤操作:

假设你已经完成了书中给出的所有步骤。

    从配套站点下载源代码...我认为该文件夹是 SB5 及其 92 MB。 然后构建名为“freeglut.vcproj”的项目。 它会产生freeglut.dll和其他文件分开。把freeglut.dll放到c:\windows\syswow64文件夹中就可以了。

【讨论】:

【参考方案3】:

您可以只在可执行文件所在的任何位置包含 dll,如果您正在运行此 MSVC,那么您可以例如将 dll 放在您的 Debug 文件夹中。清理文件夹将删除除该 dll 之外的所有内容,因此您不必担心不断地重新复制它。此外,如果您想要一个替代解决方案,您可以将 dll 放在 Windows/System32 文件夹中,或者在 64 位架构的情况下,您可以将它放在 System/SysWow64 文件夹中

【讨论】:

【参考方案4】:

freeglut.dll 应该放在 VS 项目文件夹中。该 dll 是 MSVC 包的一部分 - http://www.transmissionzero.co.uk/software/freeglut-devel/

【讨论】:

【参考方案5】:

编译器上没有可以链接库的选项吗?例如,如果你使用 DevC++,你应该去项目 -> 项目选项 -> 参数,并设置链接器。

【讨论】:

以上是关于freeglut.dll 丢失的主要内容,如果未能解决你的问题,请参考以下文章

Error:“应用程序无法正常启动(0xc000007b)。请单击“确定”关闭应用程序。”

LNK1107文件无效或损坏: 无法在 0x308 处读取 解决方案

无法打开文件“freeglut.lib”解决方法:

freeglut 键盘问题

在没有 IDE 的情况下使用 freeglut

freeglut-2.0.1