qiulinyao 发表于 2012-10-5 08:42:34

OsgEarth编译问题,亟待解决,请各位大神牛人帮帮忙!

批生成GEOEARTH.sln,最后失败两个,错误信息如下:
正在生成代码...
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzCloseCurrentFile,该符号在函数 "public: bool __thiscall KMZArchive::readToBuffer(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_ostream<char,struct std::char_traits<char> > &)const " (?readToBuffer@KMZArchive@@QBE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_ostream@DU?$char_traits@D@std@@@3@@Z) 中被引用
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzReadCurrentFile,该符号在函数 "public: bool __thiscall KMZArchive::readToBuffer(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_ostream<char,struct std::char_traits<char> > &)const " (?readToBuffer@KMZArchive@@QBE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_ostream@DU?$char_traits@D@std@@@3@@Z) 中被引用
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzOpenCurrentFilePassword,该符号在函数 "public: bool __thiscall KMZArchive::readToBuffer(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_ostream<char,struct std::char_traits<char> > &)const " (?readToBuffer@KMZArchive@@QBE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_ostream@DU?$char_traits@D@std@@@3@@Z) 中被引用
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzGoToNextFile,该符号在函数 "public: bool __thiscall KMZArchive::readToBuffer(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_ostream<char,struct std::char_traits<char> > &)const " (?readToBuffer@KMZArchive@@QBE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_ostream@DU?$char_traits@D@std@@@3@@Z) 中被引用
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzGetCurrentFileInfo,该符号在函数 "public: bool __thiscall KMZArchive::readToBuffer(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_ostream<char,struct std::char_traits<char> > &)const " (?readToBuffer@KMZArchive@@QBE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_ostream@DU?$char_traits@D@std@@@3@@Z) 中被引用
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzGoToFirstFile,该符号在函数 "public: bool __thiscall KMZArchive::readToBuffer(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_ostream<char,struct std::char_traits<char> > &)const " (?readToBuffer@KMZArchive@@QBE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_ostream@DU?$char_traits@D@std@@@3@@Z) 中被引用
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzLocateFile,该符号在函数 "public: bool __thiscall KMZArchive::readToBuffer(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_ostream<char,struct std::char_traits<char> > &)const " (?readToBuffer@KMZArchive@@QBE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_ostream@DU?$char_traits@D@std@@@3@@Z) 中被引用
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzOpen,该符号在函数 "public: __thiscall KMZArchive::KMZArchive(class osgEarth::URI const &)" (??0KMZArchive@@QAE@ABVURI@osgEarth@@@Z) 中被引用
F:\osgearth\osgearth\vs2010\lib\Release\osgdb_kml.dll : fatal error LNK1120: 8 个无法解析的外部命令

正在生成代码...
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzOpen,该符号在函数 "public: __thiscall KMZArchive::KMZArchive(class osgEarth::URI const &)" (??0KMZArchive@@QAE@ABVURI@osgEarth@@@Z) 中被引用
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzCloseCurrentFile,该符号在函数 "public: bool __thiscall KMZArchive::readToBuffer(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_ostream<char,struct std::char_traits<char> > &)const " (?readToBuffer@KMZArchive@@QBE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_ostream@DU?$char_traits@D@std@@@3@@Z) 中被引用
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzReadCurrentFile,该符号在函数 "public: bool __thiscall KMZArchive::readToBuffer(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_ostream<char,struct std::char_traits<char> > &)const " (?readToBuffer@KMZArchive@@QBE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_ostream@DU?$char_traits@D@std@@@3@@Z) 中被引用
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzOpenCurrentFilePassword,该符号在函数 "public: bool __thiscall KMZArchive::readToBuffer(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_ostream<char,struct std::char_traits<char> > &)const " (?readToBuffer@KMZArchive@@QBE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_ostream@DU?$char_traits@D@std@@@3@@Z) 中被引用
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzGoToNextFile,该符号在函数 "public: bool __thiscall KMZArchive::readToBuffer(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_ostream<char,struct std::char_traits<char> > &)const " (?readToBuffer@KMZArchive@@QBE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_ostream@DU?$char_traits@D@std@@@3@@Z) 中被引用
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzGetCurrentFileInfo,该符号在函数 "public: bool __thiscall KMZArchive::readToBuffer(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_ostream<char,struct std::char_traits<char> > &)const " (?readToBuffer@KMZArchive@@QBE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_ostream@DU?$char_traits@D@std@@@3@@Z) 中被引用
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzGoToFirstFile,该符号在函数 "public: bool __thiscall KMZArchive::readToBuffer(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_ostream<char,struct std::char_traits<char> > &)const " (?readToBuffer@KMZArchive@@QBE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_ostream@DU?$char_traits@D@std@@@3@@Z) 中被引用
KMZArchive.obj : error LNK2019: 无法解析的外部符号 _unzLocateFile,该符号在函数 "public: bool __thiscall KMZArchive::readToBuffer(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_ostream<char,struct std::char_traits<char> > &)const " (?readToBuffer@KMZArchive@@QBE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$basic_ostream@DU?$char_traits@D@std@@@3@@Z) 中被引用
F:\osgearth\osgearth\vs2010\lib\Debug\osgdb_kmld.dll : fatal error LNK1120: 8 个无法解析的外部命令

是库引用出现错误还是什么,请大神们指点迷津啊!

wavelet2008 发表于 2014-4-15 13:42:01

我也遇到同样问题LZ解决了吗

ago 发表于 2014-4-17 10:43:09

依赖库最好自行编译,或者使用官方提供的依赖库,vc不同版本编译的依赖库不可混用
页: [1]
查看完整版本: OsgEarth编译问题,亟待解决,请各位大神牛人帮帮忙!