From: Nabil A. <bl...@gm...> - 2011-04-02 04:09:51
|
Hi everyone, I've compiled Player and Stage in Ubuntu 10.4. I finally got everything working and I have a simple controller for my robot but when ever the robot controller (The program that connects to player) exits, player segafults. So I ran player through gdb ala: (gdb) run Starting program: /home/tantalum/bin/player test.cfg [Thread debugging using libthread_db enabled] Registering driver Player v.3.0.2 * Part of the Player/Stage/Gazebo Project [http://playerstage.sourceforge.net]. * Copyright (C) 2000 - 2009 Brian Gerkey, Richard Vaughan, Andrew Howard, * Nate Koenig, and contributors. Released under the GNU General Public License. * Player comes with ABSOLUTELY NO WARRANTY. This is free software, and you * are welcome to redistribute it under certain conditions; see COPYING * for details. invoking player_driver_init()... Stage driver plugin init ** Stage plugin v3.2.2 ** * Part of the Player Project [http://playerstage.sourceforge.net] * Copyright 2000-2009 Richard Vaughan, Brian Gerkey and contributors. * Released under the GNU General Public License v2. success Stage plugin: 6665.simulation.0 is a Stage world [Loading ./test.world][Include map.inc][Include grippybot.inc] Stage plugin: 6665.position2d.0 is "grippy1" Stage plugin: 6665.sonar.0 is "grippy1.ranger:0" listening on 6665 Listening on ports: 6665 accepted TCP client 0 on port 6665, fd 12 stage driver setup Stage driver has been shutdown Program received signal SIGSEGV, Segmentation fault. Stg::World::ConsumeQueue (this=0x61db10, queue_num=<value optimized out>) at /home/tantalum/funfunfun/Stage-3.2.2-Source/libstage/world.cc:502 502 if( ev.mod->subs > 0 ) // no subscriptions means the event is discarded (gdb) print ev $1 = <value optimized out> (gdb) print ev.mod->subs Cannot access memory at address 0x33c (gdb) print ev.mod $2 = (class Stg::Model *) 0x0 (gdb) c Continuing. Program terminated with signal SIGSEGV, Segmentation fault. The program no longer exists. (gdb) So the biggest clue I can give as to why player is segfaulting is because ev.mod is NULL. What I don't know is how ev.mod became null and what that means in the grand scheme of things. Any help with this would be great. Thanks for the cool tools. Viva la revolution! |