当我使用 GLFW 和 GLEW 编译我的代码时,glewInit() 是
undefined reference to '_imp_glewInit@0'
奇怪的是,直接在上面的 glewExperimental 令牌没有问题。(如果我编译 glewInit() 注释掉,它将成功编译并运行)
我的总体问题是,为什么 glewInit() 未定义而将 glewExperimental 更改为 true 不是;以及如何解决此问题。
我的 MinGW 编译器调用:
C:\MinGW\bin\c++.exe -x c++ -o "%cd%\aeonsplice.exe" -static "main.cpp" -Wl,glew32.dll,glfw.dll
我调用 glewInit() 的地方:
glewExperimental = true; // 这检查得很好(我没有在任何地方声明 glewExperimental) if (glewInit() != GLEW_OK) // 这是中断的地方 { fprintf(stderr, "初始化 GLEW 失败,正在退出。\n" ); aeonAPITerminate(); // 这会调用 glfwTerminate() 返回假; }
如果需要更多信息,我会按要求对其进行编辑。是的,我确实搜索并找到了 20 多个关于 glewInit() 不起作用的问题,但没有一个与我的问题相符。