ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
1

custom package deploy

asked 2015-01-12 12:49:12 -0600

Edmodi gravatar image

updated 2015-01-12 13:05:13 -0600

Hi, I would like shared a custom package with a friend but i do not want he see the code. I'm try used catkin_make install to do it but he can't run roslaunch [package] [launch file] or rosrun [package] [node] even including setup.bash o setup.sh in the install directory. Roslaunch or Rosrun found the package but not the node

Thanks in advance.

edit retag flag offensive close merge delete

3 Answers

Sort by ยป oldest newest most voted
1

answered 2015-02-02 09:38:22 -0600

Edmodi gravatar image

After long search, I found the solution. The CMakeLists.txt file is so:

cmake_minimum_required(VERSION 2.8.3)

project(test)

find_package(catkin REQUIRED COMPONENTS roscpp rospy std_msgs )

add_executable(test src/test.cpp) target_link_libraries(test ${catkin_LIBRARIES}) add_dependencies(test exynos_gencpp) add_dependencies(test ${catkin_EXPORTED_TARGETS})

install(TARGETS test ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} )

install(FILES launch/test.launch DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} )

All right, but when I use Yaml to read file I found this error:

Error while loading shared libraries: libyaml-cpp.so.0.2: cannot open shared object file: No such file or directory.

Any one know what is the problem?

Thanks in advanced

edit flag offensive delete link more

Comments

Hi, have you solved this problem? Please, let me know, i can't make it work on two pcs. thanks

dottant gravatar image dottant  ( 2016-11-19 09:23:58 -0600 )edit

Hi, I solved my problem. Could you give me more details of your problem? Thanks

Edmodi gravatar image Edmodi  ( 2016-11-21 04:22:28 -0600 )edit
2

answered 2015-01-13 13:07:14 -0600

William gravatar image

You should be able to just install your packages and then copy the install folder. Which tool are you using to build?

If rosrun and roslaunch do not work before copying the package, that is a different problem.

If they only fail after copying then make sure you source your setup.bash on the new machine before trying to use roslaunch and rosrun.

Also you'll want to make sure that the other guy has the same dependencies installed (like rosbash which contains the rosrun shell function).

edit flag offensive delete link more
1

answered 2015-01-12 18:38:15 -0600

allenh1 gravatar image

Firstly, ROS is a community based project. Open source code is the very heart of ROS.

Though I do not understand why you would want to share a package without the code, I push you to this answer. But again, this is not the purpose of the local building... I asked this question to refrain from spamming the issue on the forum while I was fixing the deployment of my own package.

edit flag offensive delete link more

Comments

2

The purpose is simple: my friend can' t copy the code and present it to university teacher.

Edmodi gravatar image Edmodi  ( 2015-01-13 00:46:49 -0600 )edit
1

Ok. That's definitely a good reason. Teachers don't like copied code!

allenh1 gravatar image allenh1  ( 2015-01-13 13:46:44 -0600 )edit

Question Tools

1 follower

Stats

Asked: 2015-01-12 12:49:12 -0600

Seen: 1,445 times

Last updated: Feb 02 '15