OSSIM在Linux系统下的源码编译

0、软件库依赖关系:

OSSIM:

——GDAL

——geos

——proj

——HDF4

——HDF5

——OpenSceneGraph

————InsightToolkit

————ffmpeg

——————yasm

————OPANAL

————PODOFO

——————libpng(15)

——KAKADU

——MrSID(忽略了)

——QT

——libgeotiff

——gpstk

 

 

1、下载ossim源码

下载地址:http://download.osgeo.org/ossim/source/ossim-1.8.20/

相关资料参考网址:http://trac.osgeo.org/ossim/wiki

 

2、下载依赖库

上面的地址中也提供了部分依赖库下载,因本人机器上已经安装过gdal-1.6.3、geos-3.2.2、proj-4.7.0,故没有再安装这些软件,可以在http://download.osgeo.org/ossim/dependencies/上找到gdal和geos的源码包,以及libgeotiff、libpng按说明进行编译安装;

至于proj库,则可从http://proj4.org/download.html上下载;

HDF4和HDF5

可从https://support.hdfgroup.org/上下载,本人是直接下载的安装包(hdf-4.2.12-linux-centos6-x86_64.tar.gz,hdf5-1.8.18-linux-centos6-x86_64-gcc447-shared.tar.gz),解压后放在、usr/local目录下即可;

OSG

ossim也提供了几个OSG的版本,但编译过程中会报错(接口以及常量找不到),明显的版本不匹配,此处需注意选择合适的版本下载,下载地址:http://www.osgchina.org/index.php?option=com_content&view=category&id=106&Itemid=478;

InsightToolkit

下载地址:https://sourceforge.net/projects/itk/files/itk/,本人下载的4.11.0版本

OPENAL

openal用于给多通道三维位置音效的特效表现,OSG依赖于此,下载地址:http://kcat.strangesoft.net/openal-releases/openal-soft-1.14.tar.bz2;

FFMPEG和yasm

参看本人文章http://www.cnblogs.com/HandyLi/articles/6611542.html;

PODOFO

从https://sourceforge.net/projects/podofo/files/podofo/下载,本人下载的0.9.0版本;

MrSID

找了好几天都没找到可用源码或安装包,加入了https://www.lizardtech.com/的开发者计划也没有回应。。。。。

QT

本人机器已经安装4.5.2,QT的安装也比较简单,不再赘述。比较全的下载地址:http://download.qt.io/archive/qt/

gpstk

ossimPlanet的星历(Ephemeris)模块依赖gpstk,下载地址:https://sourceforge.net/projects/gpstk/files/gpstk/

 

3、编译 (参考:https://wenku.baidu.com/view/f84d5fc8da38376baf1fae37.html)

按前面的软件依赖关系逐个编译源码和安装依赖库,源码文件的根目录中都有README或者INSTALL文件说明该源码包的编译安装过程,常用configure选项,--enable-shared、--prefix=/usr/local

在configure或者cmake后,可修改CMakeLists.txt修改软件连接库的路径,本人的依赖库安装在、usr/local目录下,编译的时候默认搜索/usr/lib64目录,部分库需要手动指定INCLUDE和LIBARARY路径,本人编译OSG时手动设置了ITK、FFMPEG以及libpng的路径。

3.1本地安装的libpng有两个版本,分别为libpng12和libpng15,编译podofo时,可能用的版本比较新,依赖/usr/local下的libpng15,libpng12是安装QT时自动安装的,目录为/usr/lib64,导致系统默认使用的是libpng12,找不到部分接口,在对应的CMakeLists.txt文件中找到语句,将其注释掉,然后增加如下内容:

3.2ITK依赖也与以上类似,找到依赖ITK的CMakeLists.txt文件,修改如下:

并在连接ITK动态库时修改如下,ITKIO可能被分解成不同的IO动态库,不存在ITKIO同名的动态库,将所有ITK库导入即可。

3.3同样的设置FFMPEG的头文件及动态库,如下:

3.4 设置OSSIM编译的环境变量

 OSSIM_DEV_HOME为OSSIM源码路径src下包括以下文件:

OSSIM_INSTALL_PREFIX为OSSIM的安装路径;OSSIM_DEPENDENCIES为OSSIM依赖库位置,在CMakeLists.txt中可设置依赖库路径。

 3.5 编译命令

cd  ~/ossim-svn/src/ossim_package_support/cmake 

mkdir build 

open configure.sh  //检查配置

cd build 

../configure.sh .. –G “Unix Makefiles”      //rm CMake_cache .txt 删除配置缓存

make 

make install

 

4、编译完成后运行ossim-geocell

加载示例数据:

 

posted @ 2017-03-24 17:23  GISer-Li  阅读(169)  评论(0)    收藏  举报