0

我正在使用以下代码(我在网上找到)来创建一个基本的 OpenGL 程序:

#include <GL/gl.h>
#include <GL/glu.h>
#include <GL/glut.h>

#define window_width  640
#define window_height 480

// Main loop
void main_loop_function()
{
    // Z angle
    static float angle;

    // Clear color (screen)
    // And depth (used internally to block obstructed objects)
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    .
    .
    .
}
.
.
.

我正在使用 Ubuntu 12.04 和 Eclipse 3.7.2。该程序编译并实际运行,但奇怪的是我的代码中出现了一个错误。这

glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

行有错误:

此行有多个标记 - 无效参数“候选者是:void glClear(unsigned int)” - 无法解析符号“GL_COLOR_BUFFER_BIT” - 无法解析符号“GL_DEPTH_BUFFER_BIT”

到目前为止,我所做的一切都没有从 IDE 中删除这个错误。欢迎任何帮助。

注意,如果我将线路更改为

glClear(GL_COLOR_BUFFER_BIT);

或者

glClear(GL_DEPTH_BUFFER_BIT);

然后错误消失...

4

1 回答 1

0

我通过激活“Preferences -> C/C++ -> Indexer -> Use active build configuration”然后重建项目解决了这个问题。它现在找到了符号。

于 2014-03-05T11:57:30.547 回答