Matt,

You are very close, but a couple of points:

1) You should be able to use the latest Player/Stage from their repositories

2) You will need to use Pyro 5.0 which is the version compatible with
Player/Stage 2.0. See http://pyrorobotics.org/?page=PyroInstallation about
getting Pyro from CVS

3) You could also run from our Knoppix-based LiveCD. See
http://pyrorobotics.org/?page=PyroLiveCD. If you have particular files you
would like included, let us know and we could include those. Then students
wouldn't even need to install anything.

4) Pyro likes Stage worlds to have a simulation device on port 7000. If
you make your own world files, make sure you add that.

(We should clean up our files and delete the old methods so it isn't so
confusing. Sorry about that.) Let us know if you have any problems.

-Doug

On Tue, July 10, 2007 7:25 am, matt studley said:
> Hi all
>
> I'm installing on Ubuntu 7.0.4 'Feisty Faun', i.e. Debian.
>
> I want to provide a nice - i.e. python - interface to player/stage for
> teaching navigation.
>
> I thought I'd inform you of the problems and (partial?) work-arounds
> I've had as some of the documentation I've found for a debian install
> seems obsolescent.
>
> As you'll see - I get some of the way but finally fail!  Any help very
> gratefully received!
>
> Matt
>
> In this email :
> $PYROBOT is /usr/lib/python2.4/site-packages/pyrobot/
> $STAGE is /usr/local/share/stage/
>
> and any text delimited by
> // =========================
> // =========================
> is terminal output.
>
>
> I have installed the following from .deb packages using apt-get via
> repositories;
>
> Swig, Numeric, PIL, tkinter, tix  libjpeg62 libjpeg62-dev
>
> I have installed Python 2.4.4 and linked /usr/bin/python to python2.4
>
> I have installed Player 2.0.3 and Stage 2.0.3 using tars from
> http://pyrorobotics.org/download/
>
> I followed instructions here:
>
> http://playerstage.sourceforge.net/doc/ps_getting_started-1.6.txt
>
> ... and tested player with simple.cfg.  Ok!
>
> ==================================================================
>
> Now I install pyrobot-latest.tgz from pyrorobotics.org/download/
>
> After configuration and declining all options I make. I
> linked /usr/local/bin/pyrobot to my $PYROBOT/bin/pyrobot.
>
> I try to run pyrobot...
>
> // ===========================================================
>>$ pyrobot
>
> /usr/local/bin/pyrobot: line 1: -e: command not found
> /usr/local/bin/pyrobot: line 8:
> Pyrobot - Python Robotics
> (c) 2005, PyroRobotics.org. Licensed under the GNU GPL.
>
> THIS FILE IS AUTOMATICALLY GENERATED
> : command not found
> /usr/local/bin/pyrobot: line 9: import: command not found
> /usr/local/bin/pyrobot: line 11: __author__: command not found
> /usr/local/bin/pyrobot: line 12: __version__: command not found
> /usr/local/bin/pyrobot: line 20: syntax error near unexpected token `('
> /usr/local/bin/pyrobot: line 20: `        cwd = os.getcwd() + '\\' +
> sys.argv[0]'
>
> // ===========================================================
>
> Hmm... seems like python isn't started as the first line of the file is
>
> // ==========================================================
> -e #!/usr/bin/python2.4
> // ==========================================================
>
> Any ideas where this '-e' comes from?  I must be missing something very
> obvious!
>
> Well, ok, I'll edit that out so the first line becomes
> // ==========================================================
> #!/usr/bin/python2.4
> // ==========================================================
>
> Now there's the same problem in $PYROBOT/system/version.py.  I'll get
> rid of that too...
>
> Ok!  pyrobot now runs with warnings...
> // ==========================================================
> sh: taskset: not found
> PYROBOT WARNING: can't find 'taskset'
> Using PYROBOT on posix with default CPUs in
> '/usr/lib/python2.4/site-packages/pyrobot/'...
> // ==========================================================
>
> I install taskset using the schedutils package using apt-get as above.
>
> Now pyrobot starts smoothly.
>
> I try to run the Stage simulator with simple.cfg as installed by pyro in
> $PYROBOT/plugins/worlds/Stage/
>
> and get many warnings (see appendix at bottom of this email) - and Stage
> fails to start;
>
> // ==========================================================
> $PYROBOT/plugins/worlds/Stage/simple.cfg:31 error: unknown interface:
> [position]
> error   : Initialization failed for driver "stage"
> error   : failed to parse config file
> $PYROBOT/plugins/worlds/Stage/simple.cfg
> // ==========================================================
>
> So I start Stage simulator with simple.cfg as found in $STAGE/worlds/
>
> Success!! (Presumably this means there is a version mis-match between
> the .cfg etc files distributed with pyrobot-latest and the companion
> versions of stage / player?)
>
> The simulator is listening on port 6665.  I try to load robot Player6665
> in pyro ...
>
> // ==========================================================
> Pyrobot Version 4.9.3: Ready...
> Attempting to import 'Player6665'...
> Exception in Tkinter callback
> Traceback (most recent call last):
>
> <snip> uninteresting tkinter call stack </snip>
>
>   File "./plugins/robots/Player6665.py", line 1, in ?
>     from pyrobot.robot.player import PlayerRobot
>   File "./robot/player.py", line 16, in ?
>     import playerc
>   File "//usr/local/lib/python2.4/site-packages/playerc.py", line 7,
> in ?
>     import _playerc
> ImportError: libplayerxdr.so.2: cannot open shared object file: No such
> file or directory
>
> // ==========================================================
>
> Hmmm... library path problem for .so files?  Need to add location of
> libplayerxdr.so.2 to LD_LIBRARY_PATH in ~/.bashrc
>
> Ok - Player6665 robot now starts but crashes
>
> // ==========================================================
> Pyrobot Version 4.9.3: Ready...
> Attempting to import 'Player6665'...
> Loaded
> '/usr/lib/python2.4/site-packages/pyrobot/plugins/robots/Player6665.py'!
> Pyrobot Player: hostname= localhost port= 6665
> Trying to connect...
> Exception in Tkinter callback
> Traceback (most recent call last):
>   File "lib-tk/Tkinter.py", line 1348, in __call__
>     return self.func(*args)
>   File "./gui/TK.py", line 202, in loadRobot
>     gui.loadRobot(self)
>   File "./gui/__init__.py", line 554, in loadRobot
>     self.engine.loadRobot(f)
>   File "./engine/__init__.py", line 174, in loadRobot
>     self.robot = system.loadINIT(file)
>   File "./system/__init__.py", line 96, in loadINIT
>     retval = userspace.INIT()
>   File
> "/usr/lib/python2.4/site-packages/pyrobot/plugins/robots/Player6665.py",
> line 6, in INIT
>     return PlayerRobot("Player6665", 6665) #, hostname="localhost")
>   File "./robot/player.py", line 499, in __init__
>     devNameList = [playerc.playerc_lookup_name(device.code) for device
> in self._client.devinfos]
>   File "//usr/local/lib/python2.4/site-packages/playerc.py", line 4792,
> in <lambda>
>     __getattr__ = lambda self, name: _swig_getattr(self,
> playerc_device_info_t, name)
>   File "//usr/local/lib/python2.4/site-packages/playerc.py", line 34, in
> _swig_getattr
>     raise AttributeError,name
> AttributeError: code
> //============================================================
>
> I guess this is a version mismatch again?  Some named attribute in a
> robot dictionary not supported by player ?  I feel I've hit a dead end
> here!
>
> Matt
>
> // =============== APPENDIX 1 ===============================
> // ========= Stage fails to start with PYROBOT simple.cfg ===
>
> * Part of the Player/Stage/Gazebo Project
> [http://playerstage.sourceforge.net].
> * Copyright (C) 2000 - 2006 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.
>
> PLAYERPATH: :/usr/local/lib:/usr/lib
>
> trying to load /libstageplugin...
> trying to load /usr/local/lib/libstageplugin...
> success
> invoking player_driver_init()...
>  Stage driver plugin init
>
>  ** Stage plugin v2.0.3 **
>  * Part of the Player/Stage Project [http://playerstage.sourceforge.net]
>  * Copyright 2000-2006 Richard Vaughan, Andrew Howard, Brian Gerkey
>  * and contributors. Released under the GNU General Public License v2.
> success
>   Stage driver creating 1 device
>    7000.31.0 is a Stage world
> [Loading
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world][Include
> pioneer.inc][Include map.inc]
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:59
> : property [gui_boundary] is defined but not used (worldfile.cc
> WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:28
> : property [gui_boundary] is defined but not used (worldfile.cc
> WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:44
> : property [polygon[0].filled] is defined but not used (worldfile.cc
> WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:38
> : property [sview[0]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:39
> : property [sview[1]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:40
> : property [sview[2]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:41
> : property [sview[3]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:42
> : property [sview[4]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:43
> : property [sview[5]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:44
> : property [sview[6]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:45
> : property [sview[7]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:46
> : property [sview[8]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:47
> : property [sview[9]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:48
> : property [sview[10]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:49
> : property [sview[11]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:50
> : property [sview[12]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:51
> : property [sview[13]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:52
> : property [sview[14]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:53
> : property [sview[15]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:56
> : property [ssize[0]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:57
> : property [ssize[1]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:58
> : property [ssize[2]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:59
> : property [ssize[3]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:60
> : property [ssize[4]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:61
> : property [ssize[5]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:62
> : property [ssize[6]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:63
> : property [ssize[7]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:64
> : property [ssize[8]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:65
> : property [ssize[9]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:66
> : property [ssize[10]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:67
> : property [ssize[11]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:68
> : property [ssize[12]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:69
> : property [ssize[13]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:70
> : property [ssize[14]] is defined but not used (worldfile.cc WarnUnused)
> warn:
> worldfile
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.world:71
> : property [ssize[15]] is defined but not used (worldfile.cc WarnUnused)
>
>   Stage driver creating 2 devices
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.cfg:31
> error: unknown interface: [position]
> error   : Initialization failed for driver "stage"
> error   : failed to parse config
> file
> /usr/lib/python2.4/site-packages/pyrobot/plugins/worlds/Stage/simple.cfg
>
>
>
>
> This email was independently scanned for viruses by McAfee anti-virus
> software and none were found
> _______________________________________________
> Pyro-users mailing list
> [email protected]
> http://emergent.brynmawr.edu/mailman/listinfo/pyro-users
>


-- 
Douglas S. Blank
Associate Professor, Bryn Mawr College
http://cs.brynmawr.edu/~dblank/
Office: 610 526 6501

_______________________________________________
Pyro-users mailing list
[email protected]
http://emergent.brynmawr.edu/mailman/listinfo/pyro-users

Reply via email to