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

Reply via email to