7

谁能帮我解决以下错误

GL/glut.h 没有这样的文件或目录

我做的事情是

  1. 安装 MinGW 后,我已将路径添加到路径环境变量
  2. 将“glut.h”添加到 C:\MinGW\Include\GL
  3. 将 glut32.dll 添加到 C:\Windows\SysWOW64
  4. 将 glut32.lib 添加到项目文件夹中
  5. 与 'g++ -o hello.exe -Wall hello.c glee.lib glut32.lib -lopengl32 -lglu32' 编译

上面的错误仍然存​​在,请帮忙

#include<GL/glut.h>
#include<iostream>
//#include<conio.h>

void render(void);

void keyboard(unsigned char c, int x, int y);

void mouse(int button, int state, int x, int y);

int main(int argc, char** atgv)
{
glutInit(&argc, argv);
glutInitDisplayMode( GLUT_DEPTH | GLUT_DOUBLE | GLUT_RGBA);
glutInitWindowPosition(100, 100);
glutInitWindowSize(640, 480);
glutCreateWindow("Sample GLUT Application");

glutDisplayFunc(render);
glutKeyboardFunc(keyboard);
glutMouseFunc(mouse);

glutMainLoop();
}

void keyboard(unsigned char c, int x, int y)
{
if(c == 27){
    exit(0);
    }
}

void mouse(int button, int state, int x, int y)
{
if(button == GLUT_RIGHT_BUTTON )
{
    exit(0);
}
}

void render(void)
{   
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );

glBegin(GL_TRIANGLES);
    glColor3f(1, 0, 0);
    glVertex2f(-0.5, -0.5);
    glColor3f(0, 1, 0);
    glVertex2f(0.5, -0.5);  
    glColor3f(0, 0, 1);
    glVertex2f(0.0, 0.5);
glEnd();

glutSwapBuffers();
}
4

2 回答 2

4

一些简单的事情可能会导致我的经验出现问题(所以请确保它们已设置!:):

  • 检查是否C:\MinGW\bin在您的路径变量中,如果没有,添加C:\MinGW\bin到您的 PATH(在控制台窗口中键入 %path% 以确保将路径属性应用于您正在使用的窗口控制台会话)
  • 放入以便它可以在运行时定位,或者将它放在与您希望运行的可执行文件相同的目录glut32.dllC:\windows\system32
  • 刚查了一下,我的 minGWglut32.dll进来了c:\mingw\bin
  • 并且libglut32.ac:\mingw\lib
  • 并且glut.h应该在c:\mingw\include\GL

为之前的疏忽道歉。

如果没有其他问题在起作用,那应该会没事。

如果您需要更多信息/帮助,请告诉我 :)

附录:

我找到了这个链接 ,虽然旧的可能对您有用,使文件可用于 mingw 的环境。

于 2013-11-08T11:42:49.557 回答
2

在基于 Debian 的系统(例如 Ubuntu)上,执行

sudo apt-get install libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev
于 2020-12-08T07:24:23.997 回答