osg第三方插件的编译方法(以jpeg插件来讲解)

osg以插件方式来扩展、加载第三方库,如果这些库在程序运行时找不到,就会报类似如下的错误:(这里以jpeg为例):

osg第三方插件的编译方法(以jpeg插件来讲解)_第1张图片

下面以jpeg为例,讲解jpeg插件的编译方法,其它库和这步骤类似。

  1. 先从GitHub - libjpeg-turbo/libjpeg-turbo: Main libjpeg-turbo repository  下载jpeg源码,利用CMake工具编译出jpeg的lib和dll,如下:

osg第三方插件的编译方法(以jpeg插件来讲解)_第2张图片

osg第三方插件的编译方法(以jpeg插件来讲解)_第3张图片

osg第三方插件的编译方法(以jpeg插件来讲解)_第4张图片

2:打开cmake-gui,设置好osg源码目录,二进制文件生成存放目录,如果不懂这是什么意思或不知道怎么设置,请百度下osg源码怎么编译,一大堆文章可以参考。

在Search编辑框输入jpeg过滤下,出现了只有jpeg的库,设置好JPEG_LIBRARY即jpeg.lib所在路径,即步骤1中的jpeg.lib的绝对路径C:\libjpeg-turbo64\lib\jpeg.lib,

设置好JPEG_LIBRARY_DEBUG即debug版本的jpeg.lib库文件,设置好JPEG_LIBRARY_RELEASE即RELEAE版本的jpeg.lib库文件。有的库分为debug和releae版本,但jpeg没有区分,debug和releae版本都是C:\libjpeg-turbo64\lib\jpeg.lib。设置好jpeg头文件的目录,即步骤1中的C:\libjpeg-turbo64\include,如下:

osg第三方插件的编译方法(以jpeg插件来讲解)_第5张图片

依次单击左下角的“configure”、"generate"之后就会生成vs的工程文件,单击“OPen Project” 按钮,启动vs(注意:本机必须安装了vs才行)

osg第三方插件的编译方法(以jpeg插件来讲解)_第6张图片

编译生成的Plugins jpeg工程,会在D:\osg\build\bin\osgPlugins-3.4.1\目录下(这个目录随你在CMake-gui中的二进制文件输出目录而定)生成osgdb_jpeg.dll。

将C:\libjpeg-turbo64\bin目录下的所有dll及刚生成的osgdb_jpeg.dll拷贝到你的应用程序工程目录下(其实这里只需要拷贝jpeg62.dll就行,但为了怕相关的依赖库缺失,建议都拷贝过去),运行程序,不会再报找不到插件的错误,程序能起来,如下:

osg第三方插件的编译方法(以jpeg插件来讲解)_第7张图片

你可能感兴趣的:(#,osg基础技术点,jpeg)