ubuntu下openGL的配置方法

This is a simple tutorial to show a new linux user (such as myself) how to setup freeglut and OpenGl. 

OS: ubuntu 12.1

I have just recently become a linux user and wanted to install freeglut to do my graphics assignments on my laptop. Although the install did not turn out to be very difficult it took me a while to do. So I have written this tutorial in case another young linux user comes along and decides he/she wants to install freeglut and OpenGL.

**This tutorial assumes that you have your operating system installed and you have access to the internet** 

Steps:

From a terminal

1) sudo apt-get update 

-This will update your apt database to the most recent available packages.

2) sudo apt-get install build-essential

- This installs the necessary development tools for building source code.

3) sudo apt-get install freeglut3-dev

- This installs the development libraries and headers for freeglut.

Your done! Extremely simple! However you must remember that when compiling you must add a '-lglut' as a comand line argument to gcc. If you don't it cannot find the library's and you will get undefined reference errors.

example command line: gcc simple.c -lglut

At this point if your program compiles and runs then you are finished. However the first time I tried to run mine I received a 'libGL warning: 3D driver claims to not support visual 0x42'. This error means I cannot display the required colors to run the program. In my case I had the most recent drivers for my video card. So I did some research on my monitor and found out it can display a color depth of 24 instead of the 16 it was set at. To fix this problem you must edit the /etc/X11/xorg.conf file as root and set the 'DefaultDepth 24'. Reboot and the problem is solved.

This is my first post (and tutorial) on the ubuntuforums. If people feel that this tutorial is not needed they can feel free to remove it. If anyone wants to add anything related to freeglut or OpenGl please feel free.
css

 完成上述操做,能够经过如下程序进行验证环境安装的正确性。linux

 

测试ubuntu

 


 

示例test.c源码:ide

 

  1. #include <GL/glut.h>

  2. void init(void)
  3. {
  4.     glClearColor(0.0, 0.0, 0.0, 0.0);
  5.     glMatrixMode(GL_PROJECTION);
  6.     glOrtho(-5, 5, -5, 5, 5, 15);
  7.     glMatrixMode(GL_MODELVIEW);
  8.     gluLookAt(0, 0, 10, 0, 0, 0, 0, 1, 0);

  9.     return;
  10. }

  11. void display(void)
  12. {
  13.     glClear(GL_COLOR_BUFFER_BIT);
  14.     glColor3f(1.0, 0, 0);
  15.     glutWireTeapot(3);
  16.     glFlush();

  17.     return;
  18. }

  19. int main(int argc, char *argv[])
  20. {
  21.     glutInit(&argc, argv);
  22.     glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
  23.     glutInitWindowPosition(0, 0);
  24.     glutInitWindowSize(300, 300);
  25.     glutCreateWindow("OpenGL 3D View");
  26.     init();
  27.     glutDisplayFunc(display);
  28.     glutMainLoop();

  29.     return 0;
  30. }

编译程式时,执行如下指令:
oop

  1. $ gcc -o test test.c -lGL -lGLU -lglut

执行:
post

  1. $ ./test
  2. 效果图以下:
  3. codeblocks IDE 要使用的话,须要在创建了控制台程序后,对内部调试环境进行配置。
  4. 具体步骤以下:
  5. 1.新建一个Console Application 工程

2.使工程包含OpenGL/Glut 等相关的连接库测试

菜单的“project” ----- “Build Options” ---------“ Linkersettings”中进行设置ui

添加文件:libGL.so  libglut.so libGLU.sothis

以下图spa

选择“加入”按钮,根据本身ubuntu中的具体位置进行添加。

完成上述步骤后,就能够进行Debug了。

 

也能够进行下面这几个步骤,能够实如今codeblocks下直接建立openGL工程。

$ sudo apt-get install build-essential gdb subversion
$ sudo apt-get install automake autoconf libtool
$ sudo apt-get install libgtk2.0-dev libxmu-dev libxxf86vm-dev

这样,在codeblocks里面新建工程就能够了,新建glut工程的话,会自带一个例子。若是只作了前两步,编译的时候就会报错,说找不到Xxf86vm。去Ubuntu论坛逛了一圈,回来,作了后3个步骤,就顺利的编译运行了。

创 建 GLUT 工程时,选择 GULT‘s Location时,直接输入 /usr 便可。由于/usr下面就有include和lib两个子文件夹。但是在Windows下面,我就搞不定如何能有这两个子文件夹的文件夹。每次都说不能包 含进去glut.h头文件。没有办法,只能到linux下面来折腾。不过仍是要研究一下。

这个是codeblocks自带的glut工程的例子。新建工程的时候出来的。编译运行后的图:

相关文章
相关标签/搜索