查看: 1898|回复: 10

OSG2.9.13编译问题

[复制链接]

该用户从未签到

发表于 2011-5-4 15:27:42 | 显示全部楼层 |阅读模式
本帖最后由 xairwolfcn 于 2011-5-5 00:15 编辑

1.我以前用得是VS2008SP1+OSG2.8.3,自己编译的没有加载QT和FBX库。3dparty库用得是英文官网上老版本的(去年的)
2.由于2.8.3版本无法支持3dmax2011+osgEXP导出的ive文件,所以要编译一个新的版本,我用的是2.9.13版,同时OSGvisual也需要2.9.9以上的版本。

3.编译2.9.13,我加入了QT和FBX库,用了英文官网上最新的 3dparty。编译搞定后。设置好环境变量,运行例子程序 和 oagviewer 等。
提示 缺少zlibd.dll或zlib1.dll。然后我从3dparty-bin里把这两个文件COPY到 我的osg目录下的bin里 就OK了
4.在我以前编译的 2.8.3中没有此类问题。

请问:为什么2.9.13会出现这样的问题,或者这就是正常的,就应该这样应用?·请给个解释!谢谢

该用户从未签到

发表于 2011-5-4 19:10:19 | 显示全部楼层
貌似就是少这两个dll,我编译新版本也是这~~

该用户从未签到

 楼主| 发表于 2011-5-5 00:09:12 | 显示全部楼层
本帖最后由 xairwolfcn 于 2011-5-5 00:12 编辑

关键是Cmake也配置是对的!还有以前2.8.3读不了的IVE文件,在新版本里添加了这两个dll后,用osgviewer 也能正常显示出!!

该用户从未签到

发表于 2011-5-5 08:38:45 | 显示全部楼层
ZLib是非常通用的压缩和解压缩工具库,可以在CMake中使用ZLIB_LIBRARY和ZLIB_INCLUDE_DIR来设置。有可能系统为您自动找到和设置了这个库,而osgDB和IVE插件会自动依赖这个库来实现相应的功能。

如果没有这个库的话,OSG也可以不依赖它,但此时IVE插件将不具备压缩和解压能力,也就读取不了那些采用了zlib进行压缩的IVE文件

该用户从未签到

发表于 2011-5-5 10:12:58 | 显示全部楼层
我也是为了用QT和FBX所以编译的2.9.9的版本,在vs2005下完成了编译,但是不知道为啥运行我以前在osg2.8.3版本下的程序会提示缺少osg66-osg.dll呢?以前的版本(如2.9.8)编译好了以后都会有一大堆的如osg65-osg.dll等带有版本号(65)的dll文件,为什么2.9.9编译好了以后再bin\osgPlugins-2.9.9下却没有文件?我编译的时候第三方库已经指定了位置了?实在没有办法我就在网上下载了编译好的2.9.9的库,然后把名称改了,但是debug模式和release模式的结果却不一样,这应该是库文件的问题吧?请问2.9.9编译好以后有没有osg66-osg.dll?还是就叫做osg.dll?

该用户从未签到

 楼主| 发表于 2011-5-5 18:57:55 | 显示全部楼层
回复 4# array
是的,我的zlib库是Cmake自动加载进去的!
还有一个问题,我编译2.8.4时用Cmake打开后,Cmake 就没有自动加载好多库,需要手动加载,而2.9.13则自动加载了3dparty里几乎所有的库,感觉很奇怪!!(3dparty位置在编译2.8.4与2.9.13时一样)。

该用户从未签到

发表于 2011-5-6 08:49:28 | 显示全部楼层
回复 5# qww

您能否整理一下自己的问题,我看着一团乱。我想这通常是您自己的路径配置有错而已

该用户从未签到

发表于 2011-5-6 08:50:13 | 显示全部楼层
还有一个问题,我编译2.8.4时用Cmake打开后,Cmake 就没有自动加载好多库,需要手动加载,而2.9.13则自动加载了3dparty里几乎所有的库,感觉很奇怪!!
这有什么奇怪的,Windows下的自动搜索机制改良了而已

该用户从未签到

发表于 2011-5-7 20:49:19 | 显示全部楼层
不好意思表达的不太清楚,我主要有两个问题:
1、不知道我编译的osg2.9.9版本后osgPlugins-2.9.9文件夹下没有任何文件?
2、2.9.9编译完成后bin文件夹下应该有osg66-osg.dll还是应该叫做osg.dll?

该用户从未签到

发表于 2011-5-9 09:39:01 | 显示全部楼层
1、这是您的问题
2、这是您设置的CMake选项OSG_MSVC_VERSIONED_DLL决定的

该用户从未签到

 楼主| 发表于 2011-5-9 22:26:33 | 显示全部楼层
回复 9# qww


    OSG_MSVC_VERSIONED_DLL 设置生成的动态连接库文件是否包含版本号!例如:osg55-osgDB.dll还是osgDB.dll
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表