【OpenGL】OpenGL安装glew扩展库
转载 http://blog.csdn.net/xiajun07061225/article/details/6938740
我在运行《OpenGL编程指南(第六版)》中文版第142页的程序blendeqn.c时,遇到错误:
1>------ 已启动生成: 项目: blendeqn, 配置: Debug Win32 ------
1>正在编译...
1>blendeqn.cpp
1>e:\学习\程序练习\opengl\blendeqn\blendeqn\blendeqn.cpp(23) : error C2065:
“GL_FUNC_ADD”: 未声明的标识符
1>e:\学习\程序练习\opengl\blendeqn\blendeqn\blendeqn.cpp(23) : error C3861:
“glBlendEquation”: 找不到标识符
1>e:\学习\程序练习\opengl\blendeqn\blendeqn\blendeqn.cpp(26) : error C2065:
“GL_FUNC_SUBTRUCT”: 未声明的标识符
1>e:\学习\程序练习\opengl\blendeqn\blendeqn\blendeqn.cpp(26) : error C3861:
“glBlendEquation”: 找不到标识符
1>e:\学习\程序练习\opengl\blendeqn\blendeqn\blendeqn.cpp(29) : error C2065:
“GL_FUNC_REVERSE_SUBTRUCT”: 未声明的标识符
1>e:\学习\程序练习\opengl\blendeqn\blendeqn\blendeqn.cpp(29) : error C3861:
“glBlendEquation”: 找不到标识符
1>e:\学习\程序练习\opengl\blendeqn\blendeqn\blendeqn.cpp(32) : error C2065:
“GL_FUNC_MIN”: 未声明的标识符
1>e:\学习\程序练习\opengl\blendeqn\blendeqn\blendeqn.cpp(32) : error C3861:
“glBlendEquation”: 找不到标识符
1>e:\学习\程序练习\opengl\blendeqn\blendeqn\blendeqn.cpp(35) : error C2065:
“GL_FUNC_MAX”: 未声明的标识符
1>e:\学习\程序练习\opengl\blendeqn\blendeqn\blendeqn.cpp(35) : error C2143: 语法错
误 : 缺少“)”(在“;”的前面)
1>e:\学习\程序练习\opengl\blendeqn\blendeqn\blendeqn.cpp(35) : error C3861:
“glBlendEquation”: 找不到标识符
1>e:\学习\程序练习\opengl\blendeqn\blendeqn\blendeqn.cpp(38) : error C3861:
“exit”: 找不到标识符
1>生成日志保存在“file://e:\学习\程序练习\OpenGL\blendeqn\blendeqn\Debug
\BuildLog.htm”
1>blendeqn - 12 个错误,0 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
出错原因是:glBlendEquation是OpenGL扩展部分的函数。解决方法是安装OpenGL的glew扩展库。
我的编译环境:VS2008。
首先下载glew库:http://glew.sourceforge.net/
然后进行安装:
拷贝glew32.dll至system32文件夹下,拷贝glew32.lib至VC目录下lib文件夹,拷贝glew.h和wglew.h至VC目录下include/GL目录下。
在程序开始要导入头文件:#include <GL/glew.h>。
其次还要导入库文件glew32.lib:
初始化glew:
可以在init函数开始处初始化(注意:这一步是非常必要的,不然会出现奇怪的错误!):
glewInit();
不加这句代码的话,应用程序会出现下列错误:
还可以加入错误处理代码。
编译运行,成功。
完整代码:
- #include <GL/glew.h>
- #include <GL/glut.h>
- #include <stdlib.h>
- void init()
- {
- glewInit();
- glClearColor(1.0,1.0,0.0,0.0);
- glBlendFunc(GL_ONE,GL_ONE);
- glEnable(GL_BLEND);
- }
- void display()
- {
- glClear(GL_COLOR_BUFFER_BIT);
- glColor3f(0.0,0.0,1.0);
- glRectf(-0.5,-0.5,0.5,0.5);
- glFlush();
- }
- void keyboard(unsigned char key,int x,int y)
- {
- switch(key)
- {
- case 'a':case 'A':
- glBlendEquation(GL_FUNC_ADD);
- break;
- case 's':case 'S':
- glBlendEquation(GL_FUNC_SUBTRACT);
- break;
- case 'r':case 'R':
- glBlendEquation(GL_FUNC_REVERSE_SUBTRACT);
- break;
- case 'm':case 'M':
- glBlendEquation(GL_MIN);
- break;
- case 'x':case 'X':
- glBlendEquation(GL_MAX);
- break;
- case 27:
- exit(0);
- break;
- }
- glutPostRedisplay();
- }
- int main(int argc,char** argv)
- {
- glutInit(&argc,argv);
- glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
- glutInitWindowSize(500,500);
- glutInitWindowPosition(100,100);
- glutCreateWindow(argv[0]);
- init();
- glutDisplayFunc(display);
- glutKeyboardFunc(keyboard);
- glutMainLoop();
- return 0;
- }
运行结果:
【OpenGL】OpenGL安装glew扩展库相关推荐
- 安装python扩展库时只能使用pip_安装 Python 扩展库时只能使用 pip 工具在线安装,如果安装不成功就没有别的办法了。_学小易找答案...
[单选题]关于Python中的复数,下列说法错误的是_________________. [填空题]在Python程序中,导入sys模块后,可以通过列表________________访问命令行参数. ...
- python安装第三方扩展包_Python之安装第三方扩展库
PyPI 地址:https://pypi.python.org/pypi 如果你知道你要找的库的名字,那么只需要在右上角搜索栏查找即可. 1.pip安装扩展库 (1)安装最新版本的扩展库: cmd&g ...
- php7.1 phpize编译gd,centos 7 下用 phpize安装GD扩展库
yum 安装 开启GD库需要的模块 freetype ,jpegsrc,libpng 用phpize安装 查询php 开启模块 查询 phpize扩展安装 下载目录:/usr/src/freetype ...
- php非默认安装的扩展库,PHP安装新的扩展库
在搭建LAMP环境时,apache和php都是自己手动安装的,只安装了php的默认的扩展库.在用到curl时才发现curl扩展库没有加载. 就只好手动安装了. 1.切换到我下载的php源码文件夹中. ...
- php非默认安装的扩展库,PHP安装新的扩展库_PHP教程
在搭建LAMP环境时,apache和php都是自己手动安装的,只安装了php的默认的扩展库.在用到curl时才发现curl扩展库没有加载. 就只好手动安装了. 1.切换到我下载的php源码文件夹中. ...
- python扩展包安装_Python扩展库的安装方法
本文讨论Python扩展库的安装方法 版权声明 本文可以在互联网上自由转载,但必须:注明出处(作者:海洋饼干叔叔)并包含指向本页面的链接. 本文不可以以纸质出版为目的进行改编.摘抄. 使用pip进行安 ...
- cents OS7 使用phpize安装php扩展库,生成.so文件(超详细)
举个栗子:本次安装openssl拓展 一.扩展库检查 1.找到php安装目录 find / -name php 在/usr/local/php 2.进入拓展库检查ssh2是否存在 /usr/local ...
- php gd扩展库,linux/windows安装php-gd扩展库
linux系统篇 1.CentOS系统 关于GD扩展 gd扩展是一个开源的图像处理库,它通过提供一系列用来处理图片的API,使其可以用来创建图表.图形.缩略图以及其他图像的处理操作.gd扩展支持JPG ...
- Python+Word:我已经使用“pip install docx”命令安装了扩展库docx,为什么无法运行书上的代码操作Word文件呢?
操作Word文件的扩展库名字叫python-docx,不是docx.另外要注意,扩展库python-docx只能操作Word 2007或更新版本的文档,不能处理Word 2003之前的文档.
- phpstudy安装imagick扩展库怎么装
最近的PHP项目中,需要用到切图和缩图的效果,在linux测试服务器上很轻松的就安装好php imagick扩展.但是在本地windows开发环境,安装过程遇到好多问题,在此与大家分享. 1. 下载 ...
最新文章
- 反思脑机接口技术:机器真的能控制我们的大脑吗?
- 一文看懂BATH新基建:5G是基础,AI是内核
- FD.io/VPP — VPP 的实现原理解析
- HTML课堂笔记02-21
- Eclipse和MyEclipse相关的快捷键
- 如何从管理IT服务提供商获得最大收益
- LintCode 1671. 玩游戏(贪心、难)
- 解决Windows资源管理器右键菜单打开EditPlus容易导致资源管理器无响应问题
- 使用Mysql进行分页与排序
- 用Python做一个无限弹窗
- “谷歌浏览器无法从该网站添加应用、拓展程序和用户脚本”问题解决
- Spring注解开发配置
- mapboxgl地图分屏
- 服务器维护简单的备份方案,几种常见的数据备份方案分享
- MySQL 数据库存储引擎
- 一个IT售前咨询顾问是如何工作和生活的?
- 根据所选日期、当前日期计算一周的日期和星期,农历
- 基于java springboot美容美发美甲预约小程序源码
- Mac的环境配置的详细步骤
- 庆科信息阿里IoT“物联网创新应用大赛”正式开战