[ros-users] passing arguments to an executable with roslaunch

Ken Conley kwc at willowgarage.com
Wed Jul 28 16:55:52 UTC 2010


roslaunch passes addition ROS-specific command-line arguments to
'nodes'. The hope was to add another, non-node tag to roslaunch for
cturtle, but ran out of time.

You can see how roslaunch is constructing the command-line by running:

roslaunch --args=NODE_NAME

You will probably have to strip the remapping arguments via a wrapper,
or by editing deployer-gnulinux. Sorry for the inconvenience.

 - Ken

On Wed, Jul 28, 2010 at 9:45 AM, Eitan Marder-Eppstein
<eitan at willowgarage.com> wrote:
> Hey all,
>
> roscpp and rospy both provide ways to remove ROS specific arguments from the
> argument list.
>
> For roscpp its removeArgs:
> http://www.ros.org/doc/api/roscpp/html/namespaceros.html#aa044af6270e37edd78cf05f5fc7ee148
>
> For rospy its myargv:
> http://www.ros.org/doc/api/rospy/html/rospy-module.html#myargv
>
> Hope this helps,
>
> Eitan
>
> On Wed, Jul 28, 2010 at 9:16 AM, Adam Leeper <aleeper at stanford.edu> wrote:
>>
>> I ran into this problem too. Roslaunch seems to be prepending 2 arguments
>> to the argument list, though I don't remember what they are right now.
>> I've resorted to avoiding arguments altogether, preferring to use
>> parameters, though perhaps this is not the best method.
>> --Adam
>>
>> Adam Leeper
>> Stanford University
>> aleeper at stanford.edu
>> 719.358.3804
>>
>>
>> On Wed, Jul 28, 2010 at 9:01 AM, Ivan Dryanovski
>> <ivan.dryanovski at gmail.com> wrote:
>>>
>>> I can't test this right now, but I encountered this before, and this
>>> is what I remember. When I did something like this:
>>>
>>> <node pkg="x" type="y" name="z"  args="ARG" output="screen"/>
>>>
>>> This would start program y with 4 arguments, the 4th of which is "ARG"
>>>
>>> however, if you do "rosrun x y ARG"
>>>
>>> this would pass 2 arguments to the program, the 2nd being ARG
>>>
>>> Ivan
>>>
>>> On Wed, Jul 28, 2010 at 11:51 AM, Steven Bellens
>>> <steven.bellens at mech.kuleuven.be> wrote:
>>> > Hi,
>>> >
>>> > I'm trying to start a rosnode with the roslaunch command and a launch
>>> > file.
>>> > The command I use to start the program manually is:
>>> >
>>> > 'rosrun ocl_2.0 deployer-gnulinux -s deployer.xml'
>>> >
>>> > which executes 'deployer-gnulinux' in the ocl_2.0 package with
>>> > arguments '-s deployer.xml'
>>> > My pelican.launch file contains:
>>> >
>>> > <launch>
>>> > <node name="pelican" pkg="ocl_2.0" type="deployer-gnulinux" args="-s
>>> > deployer.xml" output="screen"/>
>>> > </launch>
>>> >
>>> > but when I launch this with 'roslaunch pelican.launch' it says:
>>> > "...
>>> > Exception:too many positional options
>>> > Allowed options:
>>> >  -h [ --help ]           Show program usage
>>> >  -s [ --start ] arg      Deployment configuration file (eg
>>> > 'config-file.xml')
>>> >  --site-file arg         Site deployment file (eg 'Deployer-site.cpf'
>>> > or
>>> >                          'Deployer-site.xml')
>>> >  -l [ --log-level ] arg  Level at which to log from RTT
>>> > (case-insensitive)
>>> >
>>> >  Never,Fatal,Critical,Error,Warning,Info,Debug,Realtim
>>> >                          e
>>> >  --no-consolelog         Turn off RTT logging to the console (will
>>> > still log
>>> >                          to 'orocos.log')
>>> >  --require-name-service  Require CORBA name service
>>> >  --DeployerName arg      Name of deployer component (the --DeployerName
>>> > flag
>>> >                          is optional)
>>> > ..."
>>> >
>>> > Which looks like the args don't get passed in the right way to the
>>> > program executable. What exactly happens when this roslaunch command
>>> > is executed and the args are passed to the goal program? Is it
>>> > possible roslaunch adds extra elements here? How can I make roslaunch
>>> > pass the right arguments to the program executable?
>>> >
>>> > best regards,
>>> >
>>> > Steven
>>> > _______________________________________________
>>> > ros-users mailing list
>>> > ros-users at code.ros.org
>>> > https://code.ros.org/mailman/listinfo/ros-users
>>> >
>>> _______________________________________________
>>> ros-users mailing list
>>> ros-users at code.ros.org
>>> https://code.ros.org/mailman/listinfo/ros-users
>>
>>
>> _______________________________________________
>> ros-users mailing list
>> ros-users at code.ros.org
>> https://code.ros.org/mailman/listinfo/ros-users
>>
>
>
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users
>
>



More information about the ros-users mailing list