Hi Paul, I don't think I have ever seen this particular segfault. A quick grep for grey_play_button takes you to server/gui/Toolbar.cc and then into server/rendering/Image.cc. Image.cc is doing the stat64 and then a Freeimage_Load is probably where you are crashing. This is interesting since blue_play_button succeeded on the same path right before that. Since your mmap2 call after the read ( buried in Freeimage_Load ) is asking for really big chunk of memory ( 4290834432 bytes ) this is probably a freeimage issue.
As a shot in the dark, did you somehow happen to get gazebo to dynamically link to freeimage? The Freeimage_Initiailise() call in the Image constructor seems to only be required for a static link, so maybe it does something strange when dynamically linked. I believe you mentioned making a .pc for Freeimage. I did not make a pkg-config file, I just symlinked FreeImage.h and the libs in /usr/include and /use/lib to where ever I had freeimage installed at the time. Hope that helps, Scott 2010/4/29 Paul Osmialowski <[email protected]>: > Hi Scott, > > This helped me to move forward, still I have problems. Gazebo gets killed by > SIGSEGV right after start. I tried to track down this using valgdind, to my > surprise, it works fine started with valgrind! (unfrotunately, this is not > an workaround: everything works slower with valgrind). I started this with > strace and it says: > stat64("~/psg3/share/gazebo/Media/materials/textures/grey_play_button.png", > {st_mode=S_IFREG|0644, st_size=1182, ...}) = 0 > open("~/psg3/share/gazebo/Media/materials/textures/grey_play_button.png", > O_RDONLY) = 7 > fstat64(7, {st_mode=S_IFREG|0644, st_size=1182, ...}) = 0 > mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = > 0xb7843000 > read(7, > "\211PNG\r\n\32\n\0\0\0\rIHDR\0\0\0\24\0\0\0\27\10\6\0\0\0\v\35o"..., 4096) > = 1182 > mmap2(NULL, 4290834432, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, > 0) = -1 ENOMEM (Cannot allocate memory) > mmap2(NULL, 4290965504, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, > 0) = -1 ENOMEM (Cannot allocate memory) > mmap2(NULL, 2097152, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, > 0) = 0xb1d8e000 > munmap(0xb1d8e000, 466944) = 0 > munmap(0xb1f00000, 581632) = 0 > mprotect(0xb1e00000, 135168, PROT_READ|PROT_WRITE) = 0 > mmap2(NULL, 4290834432, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, > 0) = -1 ENOMEM (Cannot allocate memory) > --- SIGSEGV (Segmentation fault) @ 0 (0) --- > +++ killed by SIGSEGV +++ > > Looks like check for NULL pointer is missing somewhere. > > Paul > > On Wed, 28 Apr 2010, Scott Biddlestone wrote: > >> Edit your ~/.gazeborc file and set orgePath to "/usr/lib/OGRE". You >> will need to do this every time you reinstall gazebo. >> This only happens on my Gentoo box, never tried to hunt in down though. >> >> -Scott >> >> On Wed, Apr 28, 2010 at 6:45 PM, Paul Osmialowski <[email protected]> >> wrote: >>> >>> >>> On Tue, 27 Apr 2010, Scott Biddlestone wrote: >>> >>>> Hi Paul, >>>> >>>> To get rid of the recursive_mutex problem remove the "threads" use >>>> flag from ogre and reemerge ( apparently I hit this a long time ago >>>> and forgot a about, but its in my notes ). You have to do an emerge >>>> -aC ogre before emerging again, during my reemerge it sometimes tries >>>> to link to the previous ogre install. Since this ebuild uses DeViL >>>> and not Freeimage, some of my textures do not load correctly. I >>>> typically use an overlay of ogre 1.7 with freeimage for gazebo stuff. >>> >>> Hi Scott, >>> >>> Setting -threads for ogre did the trick and problem with assertions is >>> now gone, unfortunately, still I cannot run Gazebo on that Gentoo box. >>> >>> I compiled freeimage and installed globally in /usr/local/lib. Then I >>> unmerged ogre and emerged it again like that: >>> EXTRA_ECONF="--enable-freeimage" emerge ogre >>> >>> This configure option enables freeimage which results in disabling DevIL. >>> Then I compiled gazebo once again. Result is: >>> >>> Gazebo multi-robot simulator, version 0.10.0 >>> >>> Part of the Player/Stage Project [http://playerstage.sourceforge.net]. >>> Copyright (C) 2003 Nate Koenig, Andrew Howard, and contributors. >>> Released under the GNU General Public License. >>> >>> Error Loading Gazebo >>> /root/psg3/src/gazebo-20100428/server/rendering/OgreAdaptor.cc:452 : >>> Exception: unable to find rendering system >>> >>> Any suggestions for that? >>> >>> Paul >>> >>> >>> ------------------------------------------------------------------------------ >>> _______________________________________________ >>> Playerstage-gazebo mailing list >>> [email protected] >>> https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo >>> >> >> >> ------------------------------------------------------------------------------ >> _______________________________________________ >> Playerstage-gazebo mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo > > ------------------------------------------------------------------------------ > > _______________________________________________ > Playerstage-gazebo mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo > > ------------------------------------------------------------------------------ _______________________________________________ Playerstage-gazebo mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo
