这是代码:
#define GLEW_STATIC
#include "GL/glew.h"
int main () {
glewExperimental = GL_TRUE;
return 0;
}
这是输出:
Process finished with exit code -1073741515 (0xC0000135)
当 'glewExperimental' 行被注释掉时,程序以 0 退出。
这是 CMake 文件(我使用的是 CLion):
cmake_minimum_required(VERSION 2.8.4)
project(untitled)
add_definitions(-DGL_GLEXT_PROTOTYPES)
add_definitions(-DWINVER=0x0602)
add_definitions(-D_WIN32_WINNT=0x0602)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set(SOURCE_FILES main.cpp)
add_executable(untitled ${SOURCE_FILES})
target_link_libraries(untitled glfw3 glew32 opengl32 gdi32)
我在 Windows 8.1 上使用 MinGW 工具链。
我使用以下 bat 文件编译了 GLEW 库:
gcc -DGLEW_NO_GLU -O2 -Wall -W -Iinclude -DGLEW_BUILD -o src/glew.o -c src/glew.c
gcc -shared -Wl,-soname,libglew32.dll -Wl,--out-implib,lib/libglew32.dll.a -o lib/glew32.dll src/glew.o -L/mingw/lib -lglu32 -lopengl32 -lgdi32 -luser32 -lkernel32
ar cr lib/libglew32.a src/glew.o
我将生成的 libglew32.a、libglew32.dll.a 放在 MinGW/lib 文件夹中。
我将 teh glew32.dll 放在 Windows/System32 文件夹中。
我将 GL/glew.h、glxew.h、wglew.h 放在 MinGW/include 文件夹中。
我错过了什么?
我无法弄清楚为什么简单地为该变量赋值会引发异常......