无法在 Visual Studio C++ 2013 中 #include freeglut 的 OpenGL

Posted

技术标签:

【中文标题】无法在 Visual Studio C++ 2013 中 #include freeglut 的 OpenGL【英文标题】:Cannot #include freeglut of OpenGL in Visual Studio C++ 2013 【发布时间】:2014-08-18 12:19:57 【问题描述】:

我想开始使用 C++ OpenGl 进行编程,因此我下载了 freeglut 以包含在我的程序中。

我已经静态定义了FREEGLUT_STATIC

这是我的 source.cpp:

#include <GL\glew.h>
#include <GL\GLU.h>
#include <GL\freeglut.h>

#include "Source.h"

using namespace std;

int main()

    return 0;

source.h

#define FREEGLUT_STATIC

但是不起作用,错误是:

1>LINK : fatal error LNK1104: cannot open file 'freeglut.lib'

值得一提的是,我已经在项目中添加了库目录,即使我输入Gl/visual studio 2013 也会自动建议库和标题,这意味着它知道目录,

【问题讨论】:

看这个:***.com/questions/12300059/freeglut-compiled-dll-lib 【参考方案1】:

我发现了问题。我应该简单地执行以下操作:

在Visual Studio中右击我的项目,进入属性,然后进入VC++目录,点击“库目录”,然后添加一个新路径:

在你硬盘的freeglut主目录下,有一个名为lib/x86/Debug的文件夹,只需添加完整路径然后应用它。

您的脚本应该正确执行。

【讨论】:

【参考方案2】:

include 工作正常(否则你会在编译时得到错误,而不是在链接时)。库文件本身 (freeglut.lib) 似乎丢失了。这个SO question 解决了你的问题。

编辑:更新了我的答案,因为显然只是缺少 lib 的二进制文件。 swaldi 在评论中已经给出了相同的链接。

【讨论】:

这是一个文件“freeglut.lib”?我的 freeglut 文件夹中没有这样的东西。 对不起,我的错。您已经在链接器设置中拥有它,否则链接器将不知道要查找什么。看来你不是第一个遇到这个问题的。请看这里:***.com/questions/12300059/freeglut-compiled-dll-lib.

以上是关于无法在 Visual Studio C++ 2013 中 #include freeglut 的 OpenGL的主要内容,如果未能解决你的问题,请参考以下文章

C++ 无法在 Visual Studio 中实现抽象类

无法在 Visual Studio 2010 中构建 C++ 项目

为啥以下无法在 Visual Studio 2010 C++ 下编译?

C 文件无法在 c++ Visual Studio 中编译

无法在 Visual Studio 中将 Visual C++ 运行时包引用添加到 Windows Phone 项目

Visual Studio C++ - 无法输出预处理文件