Re: [ros-users] FreeBSD patch for boxturtle

Top Page
Attachments:
Message as email
+ (text/plain)
+ rlutil.py.diff (text/plain)
Delete this message
Reply to this message
Author: Rene Ladan
Date:  
To: ros-users
Subject: Re: [ros-users] FreeBSD patch for boxturtle
On 08-06-2010 09:54, Brian Gerkey wrote:
> hi Rene,
>
> On Mon, Jun 7, 2010 at 3:11 AM, René Ladan <> wrote:
>> I think the patch for FreeBSD is ready for regression testing (i.e.
>> that it doesn't break anything
>> on the currently supported platforms).
>
> Great!
>
>> Should I attach the patch to either ticket #2547 or #2553 ?
>
> Given the broad scope of the patch, I think that it's a better fit in
> #2547. If you attach your patch there, I'll close #2553 as a
> duplicate, and work with Tully to incorporate your changes.
>

I have attached one more patch I found while browsing the source code
for Linux. It enables terminal title rewriting on FreeBSD.

I've also tried adding FreeBSD to the _is_unix_like_platform() list in
roslib/network.py but that made roscore incapable of starting (on a
64-bit little endian machine):

% setenv ROS_IP 127.0.0.1
% setenv ROS_MASTER_URI http://localhost:11311
% roscore
... logging to
/home/rene/.ros/log/1dfb35c5-77d3-11df-8f0b-00262d5ed8ee/roslaunch-acer.rene-ladan.nl-4312.log

started roslaunch server http://127.0.0.1:26031/

SUMMARY
========

NODES

Traceback (most recent call last):
  File "/home/rene/ros/tools/roslaunch/src/roslaunch/__init__.py", line
198, in main
    p.start()
  File "/home/rene/ros/tools/roslaunch/src/roslaunch/parent.py", line
224, in start
    self.runner.launch()
  File "/home/rene/ros/tools/roslaunch/src/roslaunch/launch.py", line
633, in launch
    self._setup()
  File "/home/rene/ros/tools/roslaunch/src/roslaunch/launch.py", line
603, in _setup
    self._setup_master()
  File "/home/rene/ros/tools/roslaunch/src/roslaunch/launch.py", line
340, in _setup_master
    local_addrs = roslib.network.get_local_addresses()
  File "/home/rene/ros/core/roslib/src/roslib/network.py", line 188, in
get_local_addresses
    struct.pack('iL', max_bytes, buff.buffer_info()[0]))
IOError: [Errno 25] Inappropriate ioctl for device
^C
^C
Killed


The fallback case seems to work fine.

Regards,
Rene
--
http://www.rene-ladan.nl/

GPG fingerprint = ADBC ECCD EB5F A6B4 549F 600D 8C9E 647A E564 2BFC
(subkeys.pgp.net)
Index: tools/roslaunch/src/roslaunch/rlutil.py
===================================================================
--- tools/roslaunch/src/roslaunch/rlutil.py    (revision 10024)
+++ tools/roslaunch/src/roslaunch/rlutil.py    (working copy)
@@ -99,7 +99,7 @@


 def _set_terminal(s):
     import platform
-    if platform.system() in ['Linux', 'Darwin', 'Unix']:
+    if platform.system() in ['FreeBSD', 'Linux', 'Darwin', 'Unix']:
         try:
             print '\033]2;%s\007'%s
         except: