编译glut

原创 2016年08月29日 10:02:47

用vs2012编辑freeglut,

vs2012的使用可以参考

http://blog.csdn.net/arkadia2/article/details/52084211

1.下载

http://freeglut.sourceforge.net/下载freeglut 3.0.0

解压后的文件目录如下

2.搭建

2.1 新建解决方案opgltest和空项目main,目录结构如下

2.2 新建空项目freeglut,设置为dll项目

3. 增加属性页all

作为所有项目通用,freeglut和main都参用之,设置用户宏

其中SrcDir为项目源代码目录,BinDir为生成可运行程序目录,LibDir为产生的库文件(.lib)目录

4.freeglut项目添加源文件

4.1 复制freeglut的include,src代码到src/freeglut

4.2 vs2012建筛选器,添加现有文件,导入include目录,src/mswin,src/util,和src下fg_XXX文件(不要导入gles_stubs.c

4.3 设置freeglut项目属性

4.3.1 添加附包include目录$(GlutIndDir)

4.3.2 添加预处理宏

FREEGLUT_EXPORTS
_CRT_SECURE_NO_WARNINGS
NEED_XPARSEGEOMETRY_IMPL

4.3.3 添加生成事件,复制库文件到$(LibDir),dll文件到($BinDir),为后面的main项目作准备

copy $(OutDir)$(TargetName)$(TargetExt) $(BinDir)
copy $(OutDir)$(TargetName).lib $(LibDir)

编译,应该会生成freeglut.lib,freeglut.dll

5.使用freeglut

5.1 添加main.cpp到main项目,代码如下

#include <cstdio>
#include "GL/glut.h"

void display() {

}

int main(int argc, char** args) {
	glutInit(&argc, args);
	glutInitWindowPosition(100, 100);   
	glutInitWindowSize(800, 480);   
	glutInitDisplayMode(GLUT_RGBA);   

	glutCreateWindow("opgltest");   

	glutDisplayFunc(display);   

	const GLubyte* name = glGetString(GL_VENDOR); //返回负责当前OpenGL实现厂商的名字
	const GLubyte* biaoshifu = glGetString(GL_RENDERER); //返回一个渲染器标识符,通常是个硬件平台
	const GLubyte* OpenGLVersion =glGetString(GL_VERSION); //返回当前OpenGL实现的版本号
	const GLubyte* gluVersion= gluGetString(GLU_VERSION); //返回当前GLU工具库版本
	printf("OpenGL实现厂商的名字:%s\n", name);
	printf("渲染器标识符:%s\n", biaoshifu);
	printf("OpenGL实现的版本号:%s\n",OpenGLVersion );
	printf("OGLU工具库版本:%s\n", gluVersion);

	glutMainLoop();   
	return EXIT_SUCCESS;
}

5.2 设置main项目属性

5.2.1 添加附加包含目录$(GlutIndDir)

6.2.2 添加预处理宏

NDEBUG

这里主要是因为glut内部已经使用了宏来告诉链接器要链接的库文件

5.2.3 添加附加库目录$(LibDir)

5.2.4 添加附加库文件freeglut.lib,这一步可以不用。因为定义了NDEBUG

5.2.5 添加生成事件

copy $(OutDir)$(TargetName)$(TargetExt) $(BinDir)

编译,运行


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

windows环境下编译glut-3.7

某天在用OpenGL的GLUT库写程序,编译通过,但运行却提示“无法定位glutKeyboardUpFunc函数于glut.dll上”,但是我查看glut.h又可以发现glutKeyboardUpFu...

opengl glut 编译

新建工程glut dll工程,本来想创建lib,工程的,但是想起来,gl是状态机机制。dll方便资源共享等。 添加两个include目录 各种手机电脑平台,网络多媒...

VS2010编译glut-3.7

下好了glut(http://www.opengl.org/resources/libraries/glut/glut37.zip)后肯定想着编译它, 于是乎问题出现了, 编译通不过...首先你要修改...

编译glew

给opgltest解决方案,添加glew支持,opgltest创建参考 http://blog.csdn.net/arkadia2/article/details/52350553 vs2012使...

vs2010编译glut-3.7

下好了glut(http://www.opengl.org/resources/libraries/glut/glut37.zip)后肯定想着编译它, 于是乎问题出现了, 编译通不过... 首先...

vs2008编译环境opengl的glut函数库安装

vs2008编译环境opengl的glut函数库安装            Opengl中的GL.lib,GLU.lib,opengl32.lib等一些基本的库和它们的动态链接库在windows...

glut37编译好的bin文件

  • 2014-01-08 17:53
  • 117KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)