Dear Lars,

My last post on this matter, didn't spawn many answers so I try again. 
> Please help if you can.
>

Listeners on this mailing list have probably not answered you because no 
one has yet had the use case to remotely launch other nodes from the image 
created with bitbake. The number of meta-ros is still a low percentage of 
ROS users.
 

> I get:
>
>> ... logging to 
>> /home/root/log/1f01669c-227d-11e6-8bd4-08002775a53d/roslaunch-Computer-03-1010.log
>> Checking log directory for disk usage. This may take awhile.
>> Press Ctrl-C to interrupt
>> Done checking log file disk usage. Usage is <1GB.
>> started roslaunch server http://192.168.1.197:52803/
>> remote[Computer-04-0] starting roslaunch
>> remote[Computer-04-0]: creating ssh connection to Computer-04:22
>> remote[Computer-04-0]: failed to launch on row-04:
>> *pycrypto is not installed*
>>
>> [Computer-04-0] killing on exit
>> unable to start remote roslaunch child: Computer-04-0
>> The traceback for the exception was written to the log file
>
>  

>  
>

> I see that  indigo/lib/python2.7/site-packages/roslaunch/remoteprocess.py 
> expect to find pycrypto installed.
> then why doesn't the roslaunch.bb make sure pycrypto is present as a run 
> dependency ?
> where do I patch ??
>
>
As you have noticed, roslaunch is missing some runtime dependency for your 
use case, namely pycrypto and paramiko and possibly even some more (that 
have not yet been unrevealed).

To patch this, you must add the missing dependencies to the RDEPENDS_${PN} 
in the roslaunch recipe 
(https://github.com/bmwcarit/meta-ros/blob/master/recipes-ros/ros-comm/roslaunch_1.11.16.bb,
 
line 18 to 33). Existing recipes in the whole openembedded layers can be 
easily found on layers.openembedded.org; fortunately, python-pycrypto and 
python-paramiko are already available in the meta-openstack layer.

If you have a look on the git history of the ros-comm directory, e.g., with 
https://github.com/bmwcarit/meta-ros/commits/master/recipes-ros/ros-comm, 
you will notice that over the years the runtime dependency has been 
improved, 
e.g., 
https://github.com/bmwcarit/meta-ros/commit/e0dd77bbd8fbd1cf53aa7393af05b197d6ee65ab,
 
and this remains a continuous effort.

With python requiring modules at run-time, we only notice missing 
dependencies once a use case requires them, and not a compilation time. 

If you have created a working patch for the roslaunch recipe, you are 
welcome to submit a pull request on github and we will review and test your 
suggested improvement. Open-source Development relies on active users to 
become part of development and not simply claim software to be incomplete; 
and we always welcome new developers and submissions to this open-source 
work.

Best regards,

Lukas

Reply via email to