Fedora23上编译openGL程序前的准备工作
来源:互联网 发布:linux文件强制锁 编辑:程序博客网 时间:2024/06/06 02:31
Fedora下OpenGl开发环境配置
开发OpenGL工程需要3个库文件和对应的头文件:
libglut.so,libGLU.so,libGL.so, gl.h ,glu.h, glut.h
这些库在linux系统中默认都有,使用locate命令验证都在标准库目录(/usr/lib)下:
[root@localhost GL]# locate libglut.so/usr/lib/libglut.so.3/usr/lib/libglut.so.3.9.0[root@localhost GL]# locate libGLU.so/usr/lib/libGLU.so/usr/lib/libGLU.so.1/usr/lib/libGLU.so.1.3.070700[root@localhost GL]# locate libGL.so/usr/lib/libGL.so/usr/lib/libGL.so.1/usr/lib/libGL.so.1.2
但是头文件是没有的,安装开发包之前使用locate验证无法找到相关文件。
安装开发包(需要3个开发包):
yum install mesa-libGL-devel mesa-libGLU-devel //这两个是opengl核心库yum install freeglut-devel //OpenGL Utility ToolKit
安装完之后用rpm命令验证安装包和查询安装的文件以及安装在什么位置(以glut-devel为例):
[root@localhost etc]# rpm -qa | grep glutfreeglut-devel-2.6.0-1.fc12.i686[root@localhost etc]# rpm -ql freeglut-devel/usr/include/GL/freeglut.h/usr/include/GL/freeglut_ext.h/usr/include/GL/freeglut_std.h/usr/include/GL/glut.h/usr/lib/libglut.so
由上可见安装freeglut之后在/usr/include/GL/目录下添加了glut.h,在/usr/lib/下替换了libglut.so文件。
可以在/usr/include/GL下使用ls验证一下安装的头文件:
[root@localhost GL]# lsfreeglut_ext.h freeglut_std.h gl.h glu.h glut.h glx.h glx_mangle.h glxproto.h internalfreeglut.h glext.h gl_mangle.h glu_mangle.h glxext.h glxint.h glxmd.h glxtokens.h
好了,相关库和头文件都一切就绪,我们可以来写一个最简单的例子程序:
#include <GL/glut.h>void display(){ glClear(GL_COLOR_BUFFER_BIT); glBegin(GL_POLYGON); glVertex2f(-0.5,-0.5); glVertex2f(-0.5,0.5); glVertex2f(0.5,0.5); glVertex2f(0.5,-0.5); glEnd(); glFlush();}int main(int argc,char *argv[]){ glutInit(&argc,argv); glutCreateWindow("Simple"); glutDisplayFunc(display); glutMainLoop(); return 0;}
使用如下命令编译:
gcc simple.c -o app -lglut -lGL -lGLU -lm -lX11 -lm
运行./app出现一个画了白色矩形的窗口 阅读全文
0 0
- Fedora23上编译openGL程序前的准备工作
- openGL-learn01 学习OpenGL前的准备工作
- 程序开始前的准备工作
- 编译安装工具前的准备工作
- Building System之编译前的准备工作
- 微信小程序开发前的准备工作
- 第1课:学习OpenGL前的准备工作
- 学习OpenGL前的准备工作 VS2005/2008配置
- 设计前的准备工作
- 移植前的准备工作
- 项目前的准备工作
- 飞行前的准备工作
- 开发前的准备工作
- OpenGL学习笔记(五):创建OpenGL工程模板前的所有准备工作
- linux下编写OpenGL程序的一些准备工作
- 做项目前的准备工作
- 数据库建模前的准备工作
- 学习汇编语言前的准备工作
- ubuntu16.04 安装CUDA 8.0 和 cuDNN 5.1 /cudnn6.0,可适用于gpu版本的(tensorflow,caffe,mxnet)
- 根据极验官网集成的一些坑,集成时间2017.11.21
- Scala基础语法
- 硬盘出现坏道以及处理方法
- 把一个字符串中特定的字符全部用给定的字符替换,得到一个新的字符串。
- Fedora23上编译openGL程序前的准备工作
- java-IO与装饰器模式
- EditText 设置字数限制,超过字数限制时 toast 提示并且输入无效
- springboot源码分析11-ApplicationContextInitializer原理
- kali使用u盘安装提示“无法挂载光盘....”的解决方案
- 单例模式(java)
- 大数据 技术栈
- 关于Navicat premium 连接Oracle连接不上的问题
- 网页端快速实现评分