0
$\begingroup$

Rosanswers logo

Hi, I had some doubts about how catkin_make works, and was hoping someone could explain it all to me. So, i have gone through all the basic ros tutorials, and have the begginer_tutorials package that they use. I am able to build the package and run it using ros run. This works with my devel/setup.bash sourced.

After this point I was trying to use catkin_make install to make the installation directory. I used the cmake flags to specify an install directory inside my catkin workspace and everything ran correctly. After this my workspace had the folders src, devel, build, and install. However, upon further inspection I noticed that the install folder did not contain any binary files, only the headers. I also noticed that if I use the setup.bash in the install folder none of my packages can be found; however, all my packages show up when I source /devel/setup.bash.

So, I was wondering why this is, and how it works. Why does install contain no binaries? Is it supposed to be this way? Are they just referenced by devel? Why doesn't my setup.bash in install work? If someone could provide some insight it would be greatly appreciated.


Originally posted by pachuc on ROS Answers with karma: 13 on 2014-09-16

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

Did you put install rules in your CMakeLists.txt?

Look at some released packages like costmap_2d:
https://github.com/ros-planning/navigation/blob/hydro-devel/costmap_2d/CMakeLists.txt

install( TARGETS
    costmap_2d_markers
    costmap_2d_cloud
    costmap_2d_node
    DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)

Originally posted by kmhallen with karma: 1416 on 2014-09-16

This answer was ACCEPTED on the original site

Post score: 2

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.