您的位置:首页 > 产品设计 > UI/UE

编译VirtualPlanetBuilder的问题及其解决方法

2013-01-16 16:57 561 查看
开始在64位Win7系统上编译生成不成功,换成32位的,还是VS2010,并且也不用什么特定的对应版本,我用的是VPB-0.9.11和OSG-3.0.1。并且很多人说的那个libsquish的依赖也是没必要的。

在编译生成过程中,可能会出现下面的错误:

osgDB.lib(osg80-osgDB.dll) : error LNK2005: "public: void __thiscall std::basic_ofstream<char,struct std::char_traits<char> >::`vbase destructor'(void)" (??_D?$basic_ofstream@DU?$char_traits@D@std@@@std@@QAEXXZ) 已经在 SpatialProperties.obj 中定义

正在创建库 G:/VPB/VPB 0.9.11/lib/Release/vpb.lib 和对象 G:/VPB/VPB 0.9.11/lib/Release/vpb.exp

G:\VPB\VPB 0.9.11\lib\Release\vpb.dll : fatal error LNK1169: 找到一个或多个多重定义的符号

生成失败。

这个据说是在VS2010中才会出现的问题,在vs2008中不会(没有验证)。
解决办法是强制输出dll文件
在vpb的 ”项目属性->链接器->命令行“ 中添加 ”/FORCE:MULTIPLE" ,(记住dubug和release都要添加,如果你同时生成两种版本的话)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐