[ros-users] Python node design.

Top Page
Attachments:
Message as email
+ (text/plain)
+ (text/html)
Delete this message
Reply to this message
Author: User discussions
Date:  
To: ros-users
Old-Topics: Re: [ros-users] weird stage error
Subject: [ros-users] Python node design.




    
    
    
    

Dar ROS
users,



I would
like to know if somebody could have a hint for our problem. This
question is for system design in python.



We
require of a ROS package holding a library for our system that has
relevant python wrappers (pyopencv)
used in our system.



So far,
we have encapsulated all required libraries (*.so) and python files
(*.py) into a node structure which can be used by pointing it to the
LD_LIBRARY_PATH. However, if we want to run our system as a ROS node,
we also require to update this system variable.



The
'manifest.xml' file for our ROS library (pyopencv) is:


<package>


<description
brief="pyopencv">
pyopencv
</description>


<author>Renato
Samperio</author>


<license>BSD</license>

<review
status="unreviewed" notes=""/>


<url>http://ros.org/wiki/pyopencv</url>

<depend
package="rospy"/>

<depend
package="sensor_msgs"/>


<export>


    <cpp
lflags="-Wl,-rpath,${prefix}/lib -L${prefix}/lib
-lpyopencv_extras -lboost_python -lcvaux -lcv_h_ext -lcv_hpp_ext
-lcxcore_h_ext -lcxcore_hpp_ext -lcxcore_hpp_point_ext
-lcxcore_hpp_vec_ext -lcxtypes_h_ext -lhighgui_ext -lcvaux -lcv
-lcxcore -lhighgui -lml -lml_ext -lsdopencv_ext" />



</export>

</package>



We made
our node following rules from PyStyleGuide.
Our file system structure is:
    pyopencv
        |-
CMakeLists.txt


        |-
manifest.xml


        |-
mainpage.dox
        |-
src/

    
|- pyopencv/
        ← Pointed to  LD_LIBRARY_PATH

    
|- __init__.py

    
|- *.so, *.py, *.pyc



I would
really appreciate if somebody has an idea of how we could avoid the LD_LIBRARY_PATH system variable.



With
best wishes,



Renato
Samperio