Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/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
Gcc 在mingw64下编译GLFW的Win64版本_Gcc_Mingw_Msys_Glfw_Mingw W64 - Fatal编程技术网

Gcc 在mingw64下编译GLFW的Win64版本

Gcc 在mingw64下编译GLFW的Win64版本,gcc,mingw,msys,glfw,mingw-w64,Gcc,Mingw,Msys,Glfw,Mingw W64,首先,我真的需要制作一个64位版本的glfwdll.a和glfw.dll(这样我就有希望最终成功地让Go-glfw绑定在Windows下工作……在Linux下是一个breeeze!) 似乎我现在成功地使用mingw64、MSYS和它们的make脚本编译了64位版本的glfwdll.a和glfw.dll,尽管我确实收到了一些错误消息,如“找不到maincrt入口点,改用默认的0xsomehexnumber”或类似的消息。入口点当然指的是可执行文件,在本例中指的是examples目录中的可执行文件

首先,我真的需要制作一个64位版本的glfwdll.a和glfw.dll(这样我就有希望最终成功地让Go-glfw绑定在Windows下工作……在Linux下是一个breeeze!)

似乎我现在成功地使用mingw64、MSYS和它们的make脚本编译了64位版本的glfwdll.a和glfw.dll,尽管我确实收到了一些错误消息,如“找不到maincrt入口点,改用默认的0xsomehexnumber”或类似的消息。入口点当然指的是可执行文件,在本例中指的是examples目录中的可执行文件

事实上,大多数都不起作用!然而,所有这些都建成了。以下可执行文件可以工作:

listmodes.exe mtbench.exe mthello.exe和particles.exe——后者是唯一适用于我的图形(3d gfx)示例(前者只是将一些测试信息输出到控制台窗口)

其他的有什么问题吗?他们不会崩溃,也不会向控制台报告任何事情。。。我运行它们,它们立即返回,安静

我的GLFW身材坏了吗?如何修复?4个有效的例子和其他不起作用的例子有什么区别


这是一个全新的、普通的Win7 64位安装。没有垃圾软件,所有东西都是最新的,UAC和主题都关闭了,没有安装很多软件,Nvidia GPU驱动程序更新(GPU Caps Viewer等运行良好,所以有OpenGL)。

要确保opengl32.DLL、glu32.DLL、glut32.DLL等确实没有DLL地狱问题。,查看事件查看器工具,查看应用程序是否存在一些警告或错误

这是我的想法,因为您只能运行mtbench和mthello,它们与“真正的”openglapi没有任何共同之处

但是没有关于particles.exe的线索-也许GLFW会在内部检查错误并调用exit()例程?同时检查%errorlevel%

请看这里:

有一个GameMenu()函数,如果“!glfwGetWindowParam(GLFW_OPENED)”,它可能会自动退出,这显然意味着OpenGL没有初始化

在这里,相同的函数用作退出标志

再次检查DLL

我相信你有经验在构建过程中不犯“高级”错误,所以在“用户级”可能会发生一些有趣的事情

另一项建议是:

某些参数可能不完全适合您


要“修复”示例,请尝试对glfwGetWindowParam调用进行注释。

要确保opengl32.DLL、glu32.DLL、glu32.DLL等确实没有DLL地狱问题,请查看事件查看器工具,查看应用程序是否存在一些警告或错误

这是我的想法,因为您只能运行mtbench和mthello,它们与“真正的”openglapi没有任何共同之处

但是没有关于particles.exe的线索-也许GLFW会在内部检查错误并调用exit()例程?同时检查%errorlevel%

请看这里:

有一个GameMenu()函数,如果“!glfwGetWindowParam(GLFW_OPENED)”,它可能会自动退出,这显然意味着OpenGL没有初始化

在这里,相同的函数用作退出标志

再次检查DLL

我相信你有经验在构建过程中不犯“高级”错误,所以在“用户级”可能会发生一些有趣的事情

另一项建议是:

某些参数可能不完全适合您


要“修复”示例,请尝试对glfwGetWindowParam调用进行注释。

我还不允许添加注释,因此我将此作为答案发布


您遇到的问题是由于GLFW中的三个独立错误造成的。我今天修复了它们,这些修复将包含在GLFW 2.7.6中。在那之前,您可以从中使用主干。

我还不允许添加评论,所以我将发布此作为答案


您遇到的问题是由于GLFW中的三个独立错误造成的。我今天修复了它们,这些修复将包含在GLFW 2.7.6中。在此之前,您可以使用来自的主干。

实际上,我的问题选择得不好——真正的问题是构建本身并没有按照预期完成。除了上面提到的4个示例外,我确实收到了所有输入符号警告。所以难怪他们不工作。在make过程结束时也会出现链接器错误,因此尽管lib确实得到了构建,但它们一开始一定是有点错误的构建。在一个单独的线程中跟进,并在GLFW的跟踪程序中提交了一个问题。谢谢你的指点,尽管如此,还是有有用的知识!好啊无论如何,在Win32中使用GCC风格编译/构建总是近乎噩梦:)我自己从来都不喜欢cygwin/msys:)我对Go总体上很满意,但因为他们选择GCC作为C互操作——我在这一部分没有选择余地。:)顺便说一下,particles.exe是唯一一个使用-mconsole而不是-mwindows编译/链接的(GUI)示例应用程序。因此这里没有入口符号问题。事实上,我的问题选得不好——真正的问题是构建本身没有按照预期完成。除了上面提到的4个示例外,我确实收到了所有输入符号警告。所以难怪他们不工作。在make过程结束时也会出现链接器错误,因此尽管lib确实得到了构建,但它们一开始一定是有点错误的构建。在一个单独的线程中跟进,并在GLFW的跟踪程序中提交了一个问题。谢谢你的指点,尽管如此,还是有有用的知识!好啊无论如何,在Win32中使用GCC风格编译/构建总是近乎噩梦:)我自己从来都不喜欢cygwin/msys:)我对Go总体上很满意,但因为他们选择GCC作为C互操作——我在这一部分没有选择余地。:)顺便说一下,particles.exe是唯一一个使用-mconsole而不是-mwindows编译/链接的(GUI)示例应用程序。因此,这里没有入口符号问题。所有的作品都很好,现在与最新的重新设计