User generated resources for a catkin package
I am converting a package from rosbuild to catkin, which has a 'launch' folder as well as folders for various user generated files that are loaded by an executable after the file names are passed in as params. After catkin builds the package, the results are placed in the devel folder, but the launch files and the user generated files remain in the source folder. Using my package in this way seems wrong, as I am constantly messing around with the launch files and the user files, which seems to go against the spirit of the catkin build system. What is the accepted way of handling launch and user generated files with catkinized packages?
UPDATE:
I have followed the method at the bottom of http://wiki.ros.org/catkin/CMakeLists... and can now install launch and other files to CATKIN_PACKAGE_SHARE_DESTINATION when invoking the install target on catkin_make. The problem now is that calling roslaunch my_package my_launch.launch
still refers to the launch file in the src directory, so the installation was effectively useless. Also, calling $(find my_package)
in a launch file finds my_package in the src directory, so any user generated files placed in install/share/my_package are not found.
UPDATE 2: I forgot to source the setup.bash file from the install directory (instead of the devel directory), which is why I was seeing the behaviour above. Once I sourced the proper setup.bash file, everything worked as intended. On a side note, why is CATKIN_PACKAGE_BIN_DESTINATION lib/my_package rather than bin/my_package?
``CATKIN_PACKAGE_BIN_DESTINATION`` follows Linux Filesystem Hierarchy standards for executable files that are not supposed to be globally defined.