FlightGear 2.8 编译指南
本帖最后由 jinchengde 于 2012-12-22 16:03 编辑根据部分反馈修改了第二版
楼主好人 顶起{:2_33:} 一个是_CrtIsValidHeap错误,由于Atmosphere.cxx和StandardAtmosphere.cxx中“P-sl-psf”属性的Tie操作造成;另一个是HttpClient类造成的,调用堆栈显示程序停在simgear的网络操作函数中,我直接屏蔽了相关的内容,能够运行了,但重新设置位置时void fgReInitSubsystems()中 globals->restoreInitialState();处报错,还没有查出原因。 另外从菜单调出对话框,修改参数,也肯定报错,调用堆栈显示停在simgear的gui相关的函数。
我用GIT下载了2.9版代码,问题一样!!! liuwh_99 发表于 2012-8-25 22:57 static/image/common/back.gif
一个是_CrtIsValidHeap错误,由于Atmosphere.cxx和StandardAtmosphere.cxx中“P-sl-psf”属性的Tie操作造成 ...
正式发行的代码一般编译都不会有什么问题的,尤其应该不会有这种函数错误,不太清楚你的问题,把编译错误的报错信息贴出来看看 多谢分享!!!!!! 楼主没有亲测过? THELAST 发表于 2012-10-15 17:10 static/image/common/back.gif
楼主没有亲测过?
你是指测过什么? 多谢,这个比较有用 编译simgear时遇到两个错误 请帮帮忙
CMake Error at F:/Program Files/CMake 2.8/share/cmake-2.8/Modules/FindBoost.cmake:1192 (message):
Unable to find the requested Boost libraries.
Unable to find the Boost header files.Please set BOOST_ROOT to the root
directory containing Boost or BOOST_INCLUDEDIR to the directory containing
Boost's headers.
Call Stack (most recent call first):
CMakeLists.txt:110 (find_package)
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
Boost_INCLUDE_DIR (ADVANCED)
used as include directory in directory C:/FlightGear/simgear-2.8.0
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/bucket
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/debug
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/ephemeris
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/io
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/magvar
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/math
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/misc
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/nasal
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/props
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/serial
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/structure
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/threads
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/timing
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/xml
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/environment
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/screen
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/scene/bvh
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/scene/material
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/scene/model
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/scene/sky
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/scene/tgdb
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/scene/util
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/scene/tsync
used as include directory in directory C:/FlightGear/simgear-2.8.0/simgear/sound 编译到最后编译不成功是怎么回事啊?求解释,不能生成fgfs.exe
4>sgmaterial.lib(mipmap.obj) : warning LNK4217: 本地定义的符号 ??_D?$basic_ofstream@DU?$char_traits@D@std@@@std@@QAEXXZ (public: void __thiscall std::basic_ofstream<char,struct std::char_traits<char> >::`vbase destructor'(void)) 在函数 "void __cdecl simgear::effect::dumpMipmap(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,int,int,int,int,unsigned char *,class std::vector<unsigned int,class std::allocator<unsigned int> > const &)" (?dumpMipmap@effect@simgear@@YAXV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@HHHHPAEABV?$vector@IV?$allocator@I@std@@@4@@Z) 中导入
4>sgmaterial.lib(mipmap.obj) : warning LNK4217: 本地定义的符号 ??0?$basic_ofstream@DU?$char_traits@D@std@@@std@@QAE@PBDHH@Z (public: __thiscall std::basic_ofstream<char,struct std::char_traits<char> >::basic_ofstream<char,struct std::char_traits<char> >(char const *,int,int)) 在函数 "void __cdecl simgear::effect::dumpMipmap(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char>>,int,int,int,int,unsigned char *,class std::vector<unsigned int,class std::allocator<unsigned int> > const &)" (?dumpMipmap@effect@simgear@@YAXV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@HHHHPAEABV?$vector@IV?$allocator@I@std@@@4@@Z) 中导入
4>groundradar.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: class std::_Vector_iterator<class std::_Vector_val<unsigned short,class std::allocator<unsigned short> > > __thiscall osg::MixinVector<unsigned short>::begin(void)" (__imp_?begin@?$MixinVector@G@osg@@QAE?AV?$_Vector_iterator@V?$_Vector_val@GV?$allocator@G@std@@@std@@@std@@XZ),该符号在函数 "public: void __thiscall GroundRadar::updateTexture(void)" (?updateTexture@GroundRadar@@QAEXXZ) 中被引用
4>sgtgdb.lib(SGOceanTile.obj) : error LNK2001: 无法解析的外部符号 "__declspec(dllimport) public: class std::_Vector_iterator<class std::_Vector_val<unsigned short,class std::allocator<unsigned short> > > __thiscall osg::MixinVector<unsigned short>::begin(void)" (__imp_?begin@?$MixinVector@G@osg@@QAE?AV?$_Vector_iterator@V?$_Vector_val@GV?$allocator@G@std@@@std@@@std@@XZ)
4>groundradar.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: class std::_Vector_iterator<class std::_Vector_val<unsigned short,class std::allocator<unsigned short> > > __thiscall osg::MixinVector<unsigned short>::end(void)" (__imp_?end@?$MixinVector@G@osg@@QAE?AV?$_Vector_iterator@V?$_Vector_val@GV?$allocator@G@std@@@std@@@std@@XZ),该符号在函数 "public: void __thiscall GroundRadar::updateTexture(void)" (?updateTexture@GroundRadar@@QAEXXZ) 中被引用
4>groundradar.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: class std::_Vector_iterator<class std::_Vector_val<unsigned char,class std::allocator<unsigned char> > > __thiscall osg::MixinVector<unsigned char>::begin(void)" (__imp_?begin@?$MixinVector@E@osg@@QAE?AV?$_Vector_iterator@V?$_Vector_val@EV?$allocator@E@std@@@std@@@std@@XZ),该符号在函数 "public: void __thiscall GroundRadar::updateTexture(void)" (?updateTexture@GroundRadar@@QAEXXZ) 中被引用
4>groundradar.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: class std::_Vector_iterator<class std::_Vector_val<unsigned char,class std::allocator<unsigned char> > > __thiscall osg::MixinVector<unsigned char>::end(void)" (__imp_?end@?$MixinVector@E@osg@@QAE?AV?$_Vector_iterator@V?$_Vector_val@EV?$allocator@E@std@@@std@@@std@@XZ),该符号在函数 "public: void __thiscall GroundRadar::updateTexture(void)" (?updateTexture@GroundRadar@@QAEXXZ) 中被引用
4>C:\FlightGear\flightgear-build\src\Main\Release\fgfs.exe : fatal error LNK1120: 4 个无法解析的外部命令
========== 全部重新生成: 成功 3 个,失败 1 个,跳过 0 个 ==========