您的位置:首页 > 运维架构

Ubuntu 12.04下编译OpenSceneGraph-3.0.1记录

2013-03-18 23:24 465 查看
/////////////////////////////////////////////////////////////
///  @author: andycheng
///  @Email:  ustbyangcheng@gmail.com
///  @Date:   2013-3-8
/////////////////////////////////////////////////////////////


由于项目中需要用到OSG,所以就自己编译了一遍,其中的过程可谓是历经艰险,虽然网上有很多的编译步骤,但总有这样那样的问题,故将自己编译过程中遇到的问题以及解决方法记录下来,以备日后翻阅或供其他同仁们参考。

1 编译环境

Ubuntu 12.04LTS +
OpenSceneGraph-3.0.1 + cmake-gui + CodeBlocks 12.11

2 编译过程

2.1 安装所需必要的依赖库

sudo apt-get build-dep openscenegraph #安装必备依赖库

sudo apt-get install mesa-common-dev freeglut3 freeglut3-dev #安装OpenGL库,否则提示找不到文件<GL/gl.h>

sudo apt-get install cmake cmake-qt-guilibopenal-dev libopenal1 libcurl4-openssl-dev libpoppler-dev libpoppler-glib-dev librsvg2-dev libgtkglext1 libgtkglext1-dev libgtkglextmm-x11-1.2-0 libgtkglextmm-x11-1.2-dev libwxgtk2.8-dev libopenthreads-dev libtiff4-dev libinventor0 inventor-dev libgif-dev libgif4 libjasper-dev libjasper1 libopenexr-dev libopenexr6 libavcodec-dev libavdevice-dev libavformat-dev libavutil-dev libswscale-dev libavdevice53 libavcodec53 libavformat53 libavutil51 libswscale2 gstreamer0.10-ffmpeg ffmpeg libxine-dev libquicktime-dev winff dvdrip libavbin-dev libavbin0 libavifile-0.7c2 ffmpeg-dbg ffmpeg libavcodec-dev libavfilter-dev libxine1-ffmpeg moc-ffmpeg-plugin ffmpeg-dbg gstreamer0.10-fluendo-mp3 gstreamer0.10-plugins-bad gstreamer0.10-plugins-ugly libavbin-dev libavbin0 libavfilter-dev libavifile-0.7c2 libbabl-0.0-0 libcdaudio1 libmpeg2-4 libmpcdec6 libmp3lame0 libquicktime2 libxine1 libxine1-console libxine1-ffmpeg libxine1-misc-plugins libxine1-x moc-ffmpeg-plugin moc mjpegtools ogmtools xine-ui winff dvdrip libavbin-dev libavbin0 libavifile-0.7c2 ffmpeg-dbg ffmpeg-dbg ffmpeg libavcodec-dev libavfilter-dev libxine1-ffmpeg moc-ffmpeg-plugin #为了保险,安装这些包


2.2 生成工程

打开CMake-gui,输入好参数,点击Configure,然后勾选前几个变量,点击Generate,选择Codeblocks工程即可。

2.3 编译

打开osg的Codelocks工程,直接编译即可。可能出现 “av_rescale_q was not declared in this scope”错误,在osg源码中找到osgPlugins/ffmpeg/FFmpegHeaders.hpp,在其中添加头文件

#include <libavutil/mathematics.h>
即可,再次编译即可通过。

2.4 安装运行

使用sudo make install即可安装osg。但在运行osg的程序时报错,提示找不到库,这时只要将编译后的lib库路径加到PATH路径下即可。

2.5 其他

这时再运行几个经典的命令,看看效果吧!

osgversion

osgviewer cow.osg(如果提示找不到加载不到数据,那就请加上文件的路径吧。或者设置OSG_FILE_PATH变量到数据文件路径即可)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: