Windows下用Code::Blocks+MingGW进行OpenGL2.0开发(使用GLEW库)的准备工作

    微软出于对其产品Direct3D保护的原因,Windows平台对OpenGL的支持十分消极,只能支持到OpenGL1.1版本,然而如今大量的OpenGL功能所需要的版本都高于1.1,例如,最动人的对“OpenGL着色语言”(GLSL-OpenGL shading language)的支持需要OpenGL2.0以上版本。
    但是,要在Windows平台上做高版本的OpenGL开发也并非无路可走,最简便的方法,就是使用跨平台的开源 GLEW库(GLEW-OpenGL Extension Wrangler Library)。

    下面说一下GLEW的安装配置和使用过程:

    1.1 如果使用的是微软的VC,那么直接从  http://glew.sourceforge.net/index.html  下载Windows的二进制版本( Binaries),是一个zip包,解压后,将/bin/glew32.dll拷贝到c:/windows/system32中,将/lib和/include中的文件拷贝到VC的对应文件夹中即可。
    1.2 如果和我一样,使用开源跨平台的 Code::Blocks + MingGW(通常安装Code::Blocks时,会自动安装MinGW编译器),那么步骤就会稍微不同:
    首先,去 下载一个MSYS并安装(如果安装MinGW时包含了MSYS,那么可以省去这一步)。MSYS可以说是一个模拟Unix终端的软件,如果你是个Linux开发者,打开MSYS后你会觉得非常熟悉。安装过程中会让你输入 MinGW的安装路径,按照给出的格式输入你的路径即可。
    第二,下载GLEW的源码版,地址同样是 http://glew.sourceforge.net/index.html,选择 Source下载。解压到一个路径不包含中文和空格的文件夹中,例如我的是:d:/Development/glew。
    第三,打开MSYS,进入上一步解压的glew文件夹,我的是输入:
cd d:/development/glew
    第四,输入 
make
    回车,OK,等待10来秒钟,对应MinGW编译器的GLEW库就编译好了。输出的库文件在第二步解压的那个文件夹的/lib里面,正确的话应该有3个文件:glew32.dll,libglew32.a和libglew32.dll.a,同样,将glew32.dll拷贝到c:/windows/system32中,将libglew32.a和libglew32.dll.a拷贝到MinGW目录里的/lib中。
Windows下用Code::Blocks+MingGW进行OpenGL2.0开发(使用GLEW库)的准备工作_第1张图片

    第五,将解压的glew文件夹中/include/GL里的头文件拷贝到MinGW中/include/GL里面。安装到这一步就完成了。
    1.3 使用GLEW库。打开Code::Blocks,打开或新建一个OpenGL项目,点击Project->Build options->Linker settings->Add。如果你需要做静态链接(运行程序时不需要glew32.dll动态链接库文件),那么选择libglew32.a文件;如果你需要做动态链接(运行程序时需要glew32.dll动态链接库文件,但可执行文件体积较小),那么选择libglew32.dll.a
Windows下用Code::Blocks+MingGW进行OpenGL2.0开发(使用GLEW库)的准备工作_第2张图片

    1.4 这一步很关键。如果你链接的是libglew32.dll.a,那么没问题,直接在你的c++程序里面加入
#include <GL/glew.h>
    即可(注意要加在#include <GL/glut.h>之前,否则会报编译错误); 但是,如果你链接的是libglew32.a,那么在#include <GL/glew.h>之前一定要加上一句
#define GLEW_STATIC
    否则链接时会报错!

    剩下的就是如何使用这些扩展指令的问题了,不在本文讨论范畴中。

你可能感兴趣的:(windows,library,extension,编译器,跨平台,Direct3D)