使用 GLEW 编译的问题

Problems compiling with GLEW

PS:我已经尝试过这个 link 中的答案: 据说重复:(

但是我没有得到任何结果,仍然显示相同的错误。

我正在尝试用 C++ 编译一些代码,我正在使用 SDL 和 GLEW,我正在尝试创建一个简单的精灵,但这样做我得到了下一个输出:

这是我的来源:

#include "Sprite.h"

Sprite::Sprite() {
    _vboID =0;
}

Sprite::~Sprite() {
    if(_vboID != 0){
    glDeleteBuffers(1, &_vboID);
    }
}

void Sprite::init(float x, float y, float width, float height) {
    x=_x;
    y=_y;
    width=_width;
    height=_height;

    if(_vboID==0){
        glGenBuffers(1,&_vboID);
    }

    float vertexData[12];

    vertexData [0] = x + width;
    vertexData [1] = y + height;

    vertexData [2] = x;
    vertexData [3] = y + height;

    vertexData [4] = x;
    vertexData [5] = y;

    //Second triangle
    vertexData [6] = x;
    vertexData [7] = y;

    vertexData [8] = x + width;
    vertexData [9] = y;

    vertexData [10] = x + width;
    vertexData [11] = y + height;

    glBindBuffer(GL_ARRAY_BUFFER, _vboID);
    glBufferData(GL_ARRAY_BUFFER, sizeof(vertexData), vertexData,     GL_STATIC_DRAW);
    glBindBuffer(GL_ARRAY_BUFFER, 0);
}

void Sprite::draw() {
    glBindBuffer(GL_ARRAY_BUFFER, _vboID);
    glEnableVertexAttribArray(0);
    glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 0, 0);
    glDrawArrays(GL_TRIANGLES, 0, 6);
    glDisableVertexAttribArray(0);
    glBindBuffer(GL_ARRAY_BUFFER, 0);
}

我添加了所有实验室,但我有这个输出。

将此添加到您的 CMakeLists.txt

find_package(GLEW REQUIRED)
include_directories(${GLEW_INCLUDE_DIRS})

and in the target_link_libraries( ... ${GLEW_LIBRARIES} ... )

这很可能会解决您的问题,但您应该更深入地研究 cmake 并编写一个更干净的 CMakeLists.txt 文件。