无法找到OpenGL动态链接库glut.dll中的_glutCreateWindowWithExit输入点

118 篇文章 ¥29.90 ¥99.00
当遇到'无法找到OpenGL动态链接库glut.dll中的_glutCreateWindowWithExit输入点'错误时,通常是缺失GLUT库文件导致。解决方案包括:下载并安装GLUT库文件到系统目录,更新系统环境变量,然后重新编译运行代码。本文提供了一步一步的解决步骤和一个简单的OpenGL程序示例。

无法找到OpenGL动态链接库glut.dll中的_glutCreateWindowWithExit输入点

如果在使用OpenGL编程时遇到了上述错误,很可能是由于缺少必要的GLUT库文件所致。下面将介绍如何解决这个问题。

解决方案:

步骤1:下载GLUT库文件

从网络上下载所需的GLUT库文件。可以在网上搜索“glut.dll”和“glut32.dll”,这些文件是OpenGL编程中最基本的库文件。

步骤2:复制GLUT库文件到系统文件夹

将下载的GLUT库文件复制到Windows的系统文件夹“System32”中(如果是64位操作系统还需要同时将其复制到SysWOW64文件夹中)。拷贝完毕后,重新启动计算机,在重新启动前请确保你已经完成了所有其他操作。

步骤3:更新环境变量

需要配置系统环境变量以确保能够正确地加载GLUT库文件。具体操作如下:

  • 右键点击“我的电脑” -> “属性” -> “高级系统设置” -> “环境变量”。
  • 在“系统变量”区域中找到“Path”,双击打开,并在其中添加GLUT库文件的路径,同时加入路径分隔符(如“;”)。
  • 点击“确定”按钮保存更改。

步骤4:编译运行代码

在重新启动计算机后,重新编译OpenGL代码,运行程序时应该就可以成功加载GLUT库文件了。

下面是一个简单的OpenGL程序示例:

#include <windows.h>
#include <GL/
g++ -std=c++17 -Wall -Wextra -g -Iinclude -c -MMD src/main.cpp -o src/main.o g++ -std=c++17 -Wall -Wextra -g -Iinclude -o output\main.exe src/main.o -Llib -lglad -lglfw3dll d:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: src/main.o: in function `glutInit_ATEXIT_HACK': D:\opengl\GC/include/GL/freeglut_std.h:637: undefined reference to `_imp____glutInitWithExit@12' d:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: src/main.o: in function `glutCreateWindow_ATEXIT_HACK': D:\opengl\GC/include/GL/freeglut_std.h:639: undefined reference to `_imp____glutCreateWindowWithExit@8' d:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: src/main.o: in function `glutCreateMenu_ATEXIT_HACK': D:\opengl\GC/include/GL/freeglut_std.h:641: undefined reference to `_imp____glutCreateMenuWithExit@8' d:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: src/main.o: in function `Z9myDrawingv': D:\opengl\GC/src/main.cpp:9: undefined reference to `glClearColor@16' d:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: D:\opengl\GC/src/main.cpp:10: undefined reference to `glClear@4' d:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: D:\opengl\GC/src/main.cpp:13: undefined reference to `glRotatef@16' d:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: D:\opengl\GC/src/main.cpp:14: undefined reference to `_imp__glutWireTeapot@8' d:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: D:\opengl\GC/src/main.cpp:17: undefined reference to `glFlush@0' d:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: src/main.o: in function `main': D:\opengl\GC/src/main.cpp:24: undefined reference to `_imp__glutInitDisplayMode@4' d:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: D:\opengl\GC/src/main.cpp:28: undefined reference to `_imp__glutDisplayFunc@4' d:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: D:\opengl\GC/src/main.cpp:33: undefined reference to `_imp__glutMainLoop@0' collect2.exe: error: ld returned 1 exit status Makefile:78: recipe for target 'main.exe' failed
最新发布
06-22
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值