Hi, Having compiled osg vers 2.8.3 from the svn sources and subsequently compiled, linked and installed SimGear and FlightGear on a 64 bit Ubuntu Linux system the application runs fine for most options but I am puzzled about this one segfault at runtime.
Start up Flight Gear /usr/local/bin/fgfs When it starts click on Debug|Dump Scene Graph It writes a large file to disk (always within a few bytes of 749938) and then segfaults. This is always the same. The gdb backtrace is as follows: ----------START OF GDB OUTPUT ------------ Program received signal SIGSEGV, Segmentation fault. 0x00007ffff55b7c41 in OpenThreads::Atomic::operator unsigned int() const () from /usr/local/lib64/libosgParticle.so.65 (gdb) bt #0 0x00007ffff55b7c41 in OpenThreads::Atomic::operator unsigned int() const () from /usr/local/lib64/libosgParticle.so.65 #1 0x00007ffff55b7c62 in osg::Referenced::referenceCount() const () from /usr/local/lib64/libosgParticle.so.65 #2 0x00007ffff4642e8c in osgDB::Registry::writeObject(osg::Object const&, osgDB::Output&) () from /usr/local/lib64/libosgDB.so.65 #3 0x00007ffff462e2d5 in osgDB::Output::writeObject(osg::Object const&) () from /usr/local/lib64/libosgDB.so.65 #4 0x00000000009af9ce in simgear::EffectGeode_writeLocalData (obj=..., fw=...) at EffectGeode.cxx:100 #5 0x00007ffff4643891 in osgDB::Registry::writeObject(osg::Object const&, osgDB::Output&) () from /usr/local/lib64/libosgDB.so.65 #6 0x00007ffff462e2d5 in osgDB::Output::writeObject(osg::Object const&) () from /usr/local/lib64/libosgDB.so.65 #7 0x00007fffd93f62cc in Group_writeLocalData(osg::Object const&, osgDB::Output&) () from /raid/local/lib64/osgPlugins-2.8.3/osgdb_osg.so #8 0x00007ffff4643891 in osgDB::Registry::writeObject(osg::Object const&, osgDB::Output&) () from /usr/local/lib64/libosgDB.so.65 #9 0x00007ffff462e2d5 in osgDB::Output::writeObject(osg::Object const&) () from /usr/local/lib64/libosgDB.so.65 #10 0x00007fffd93f62cc in Group_writeLocalData(osg::Object const&, osgDB::Output&) () from /raid/local/lib64/osgPlugins-2.8.3/osgdb_osg.so #11 0x00007ffff4643891 in osgDB::Registry::writeObject(osg::Object const&, osgDB::Output&) () from /usr/local/lib64/libosgDB.so.65 #12 0x00007ffff462e2d5 in osgDB::Output::writeObject(osg::Object const&) () from /usr/local/lib64/libosgDB.so.65 #13 0x00007fffd93f62cc in Group_writeLocalData(osg::Object const&, osgDB::Output&) () from /raid/local/lib64/osgPlugins-2.8.3/osgdb_osg.so #14 0x00007ffff4643891 in osgDB::Registry::writeObject(osg::Object const&, osgDB::Output&) () from /usr/local/lib64/libosgDB.so.65 #15 0x00007ffff462e2d5 in osgDB::Output::writeObject(osg::Object const&) () from /usr/local/lib64/libosgDB.so.65 #16 0x00007fffd93f62cc in Group_writeLocalData(osg::Object const&, osgDB::Output&) () from /raid/local/lib64/osgPlugins-2.8.3/osgdb_osg.so #17 0x00007ffff4643891 in osgDB::Registry::writeObject(osg::Object const&, osgDB::Output&) () from /usr/local/lib64/libosgDB.so.65 #18 0x00007ffff462e2d5 in osgDB::Output::writeObject(osg::Object const&) () from /usr/local/lib64/libosgDB.so.65 #19 0x00007fffd93f62cc in Group_writeLocalData(osg::Object const&, osgDB::Output&) () from /raid/local/lib64/osgPlugins-2.8.3/osgdb_osg.so #20 0x00007ffff4643891 in osgDB::Registry::writeObject(osg::Object const&, osgDB::Output&) () from /usr/local/lib64/libosgDB.so.65 #21 0x00007ffff462e2d5 in osgDB::Output::writeObject(osg::Object const&) () from /usr/local/lib64/libosgDB.so.65 #22 0x00007fffd93f62cc in Group_writeLocalData(osg::Object const&, osgDB::Output&) () from /raid/local/lib64/osgPlugins-2.8.3/osgdb_osg.so #23 0x00007ffff4643891 in osgDB::Registry::writeObject(osg::Object const&, osgDB::Output&) () from /usr/local/lib64/libosgDB.so.65 #24 0x00007ffff462e2d5 in osgDB::Output::writeObject(osg::Object const&) () from /usr/local/lib64/libosgDB.so.65 #25 0x00007fffd93f62cc in Group_writeLocalData(osg::Object const&, osgDB::Output&) () from /raid/local/lib64/osgPlugins-2.8.3/osgdb_osg.so #26 0x00007ffff4643891 in osgDB::Registry::writeObject(osg::Object const&, osgDB::Output&) () from /usr/local/lib64/libosgDB.so.65 #27 0x00007ffff462e2d5 in osgDB::Output::writeObject(osg::Object const&) () from /usr/local/lib64/libosgDB.so.65 #28 0x00007fffd93f62cc in Group_writeLocalData(osg::Object const&, osgDB::Output&) () from /raid/local/lib64/osgPlugins-2.8.3/osgdb_osg.so #29 0x00007ffff4643891 in osgDB::Registry::writeObject(osg::Object const&, osgDB::Output&) () from /usr/local/lib64/libosgDB.so.65 #30 0x00007ffff462e2d5 in osgDB::Output::writeObject(osg::Object const&) () from /usr/local/lib64/libosgDB.so.65 #31 0x00007fffd93f62cc in Group_writeLocalData(osg::Object const&, osgDB::Output&) () from /raid/local/lib64/osgPlugins-2.8.3/osgdb_osg.so #32 0x00007ffff4643891 in osgDB::Registry::writeObject(osg::Object const&, osgDB::Output&) () from /usr/local/lib64/libosgDB.so.65 #33 0x00007ffff462e2d5 in osgDB::Output::writeObject(osg::Object const&) () from /usr/local/lib64/libosgDB.so.65 #34 0x00007fffd93f62cc in Group_writeLocalData(osg::Object const&, osgDB::Output&) () from /raid/local/lib64/osgPlugins-2.8.3/osgdb_osg.so #35 0x00007ffff4643891 in osgDB::Registry::writeObject(osg::Object const&, osgDB::Output&) () from /usr/local/lib64/libosgDB.so.65 #36 0x00007ffff462e2d5 in osgDB::Output::writeObject(osg::Object const&) () from /usr/local/lib64/libosgDB.so.65 #37 0x00007fffd93f62cc in Group_writeLocalData(osg::Object const&, osgDB::Output&) () from /raid/local/lib64/osgPlugins-2.8.3/osgdb_osg.so #38 0x00007ffff4643891 in osgDB::Registry::writeObject(osg::Object const&, osgDB::Output&) () from /usr/local/lib64/libosgDB.so.65 #39 0x00007ffff462e2d5 in osgDB::Output::writeObject(osg::Object const&) () from /usr/local/lib64/libosgDB.so.65 #40 0x00007fffd940a6da in OSGReaderWriter::writeNode(osg::Node const&, std::string const&, osgDB::ReaderWriter::Options const*) const () from /raid/local/lib64/osgPlugins-2.8.3/osgdb_osg.so #41 0x00007ffff4646596 in osgDB::Registry::writeNodeImplementation(osg::Node const&, std::string const&, osgDB::ReaderWriter::Options const*) () from /usr/local/lib64/libosgDB.so.65 #42 0x00007ffff461a473 in osgDB::Registry::writeNode(osg::Node const&, std::string const&, osgDB::ReaderWriter::Options const*) () from /usr/local/lib64/libosgDB.so.65 #43 0x00007ffff465c561 in osgDB::writeNodeFile(osg::Node const&, std::string const&, osgDB::ReaderWriter::Options const*) () from /usr/local/lib64/libosgDB.so.65 #44 0x0000000000430c0b in writeNodeFile (filename=<value optimised out>) at /usr/local/include/osgDB/WriteFile:105 #45 fgDumpSceneGraphToFile (filename=<value optimised out>) at renderer.cxx:822 #46 0x00000000007563b5 in fgDumpSceneGraph () at gui_funcs.cxx:557 #47 0x000000000043e4c9 in do_dump_scene_graph () at fg_commands.cxx:514 #48 0x0000000000a3250e in SGBinding::fire (this=0xec9c740) at SGBinding.cxx:65 #49 0x0000000000751cc3 in FGMenuBar::fireItem (this=<value optimised out>, item=<value optimised out>) at menubar.cxx:154 ---Type <return> to continue, or q <return> to quit---q Quit (gdb) q A debugging session is active. ---------------- END OF GDB OUTPUT------------------- Can anybody suggest what I could have been doing wrong? Although the app is actually Flight Gear the stack trace is faulting way inside the OpenSceneGraph library so I am provisionally guessing this is the right forum. Robert Osfield has previously suggested I might have linked an incorrect version of osg but I have checked ldd /usr/local/bin/fgfs and the linked so files for osg and OpenThreads are all the latest compiled versions in /usr/local/lib64 Open for ideas! ... Thank you! Cheers, skip ------------------ Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=30228#30228 _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

