Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 代码::块、glut和OpenGL_C_Opengl_Codeblocks_Glut - Fatal编程技术网

C 代码::块、glut和OpenGL

C 代码::块、glut和OpenGL,c,opengl,codeblocks,glut,C,Opengl,Codeblocks,Glut,我正在尝试更新一款名为Boomtown(街机风格的Bomberman仿制品!)的旧C语言二维游戏,该游戏使用glut和OpenGL,不再使用最新版本的Code::Blocks进行编译。我正试图将源文件添加到项目本身的src/文件夹中,但我遇到了崩溃。非常感谢您的帮助!我会尽可能多地提供关于这个项目的信息 项目布局: 项目文件夹名称:boomtown 位于布姆敦内\src: boomtown.cbp 包括\ lib\ glut32.lib的旧版本(不确定在旧设置中是如何使用的) 其他信息 OS:W

我正在尝试更新一款名为Boomtown(街机风格的Bomberman仿制品!)的旧C语言二维游戏,该游戏使用glut和OpenGL,不再使用最新版本的Code::Blocks进行编译。我正试图将源文件添加到项目本身的src/文件夹中,但我遇到了崩溃。非常感谢您的帮助!我会尽可能多地提供关于这个项目的信息

项目布局:
项目文件夹名称:boomtown
位于布姆敦内\src:
boomtown.cbp
包括\
lib\
glut32.lib的旧版本(不确定在旧设置中是如何使用的)

其他信息
OS:Windows 7 64位(但尝试使用x86 glut资源设置项目)
代码块版本:12.11
编译器:GNU GCC编译器

以下是我迄今为止所做的工作:

[Glut]

  • 已下载glut32.dll glut.h和glut32.lib
  • 将glut32.dll和glut.h添加到boomtown\src\include文件夹中
  • 将glut32.lib添加到boomtown\src\lib文件夹中
  • 用新的替换旧的glut32.lib(以防万一)
[OpenGL]

  • 将SFML源添加到boomtown\src\include文件夹中
  • 将SFML库文件添加到boomtown\src\lib文件夹中
[代码块]

  • 项目->构建选项->链接器设置->链接库:lib\glut32.lib和所有SFML.a文件
  • 项目->构建选项->链接器设置->搜索目录->编译器/链接器:\boomtown\src\
  • 将boomtown\src\include\glut.h添加到项目工作区
  • 将boomtown\src\include\SFML头文件添加到项目工作区中
当我构建并运行时,我没有收到任何错误(呜呜!),但是出现了一个空白的调试窗口,我得到了以下结果:

boomtown.exe - Application Error  
The application was unable to start correctly (0xc0000be).  Click OK to close the application.

如果一切正常,游戏应该弹出,而不是应用程序错误。感谢您的帮助

您必须确保您的库以正确的顺序链接:

正确的顺序是:

    -lglut32 -lglu32 -lopengl32 -lwinmm -lgdi32
当然,可能不需要-lwinmm和-lgdi32。glut32需要glu32,而glu32又需要opengl32

尝试将项目->生成选项->链接器设置->链接库:设置为

lib\glut32.lib lib\glu32.lib lib\opengl32.lib 
等等。

谢谢@Ahmed Masud,我想在添加SFML来处理gl文件后,我已经解决了错误,但是当我尝试运行.exe时,我立即崩溃了。有什么想法吗?