building class_loader from source requires non-catkin console_bridge
Hello,
I am trying to build from source on a Raspberry Pi -- my goal is to build the uvc_camera package from UMD. This requires image_common, which depends on pluginlib, which depends on class_loader, which depends on console_bridge. The troubles I am having are how to figure out how to build console_bridge as it is not a catkin package. I tried following the instructions here:
http://answers.ros.org/question/62215/where-to-install-console_bridge/?answer=62216#post-id-62216
but I am getting the following error when I try to build:
CMake Error at /opt/ros/groovy/share/catkin/cmake/catkin_package.cmake:173 (message): catkin_package() CATKIN_DEPENDS on 'console_bridge', which has been found in '/home/pi/cb_ws/install/share/console_bridge/cmake/console_bridge-config.cmake', but it is not a catkin package Call Stack (most recent call first): /opt/ros/groovy/share/catkin/cmake/catkin_package.cmake:98 (_catkin_package) class_loader/CMakeLists.txt:11 (catkin_package)
Any help would be appreciated!
Please show what commands you are running exactly with the full output. And also what code you have checked out. Enough that we can try to reproduce your problem. Right now I can follow the instructions linked to just fine.
First, I made sure I can build my workspace to start with. I am able to do that. I basically only have common_msgs, angles, and geometry (out of which I hacked the kdl dependencies due to orocos_kdl being a dry package).
Then I check out class_loader: git clone -b groovy-devel https://github.com/ros/class_loader.git
Then, predictably my make fails quickly because it can't find the console_bridge dependency. Then I follow the steps in the above included link. I also make sure to add an export in my .bashrc that specifies the CMAKE_PREFIX_PATH. Here is some output from the build:
-- Using CATKIN_DEVEL_PREFIX: /home/pi/catkin_ws/devel
-- Using CMAKE_PREFIX_PATH: /home/pi/catkin_ws/devel;/opt/ros/groovy/ros_catkin_ws/devel_isolated/rosbag;/opt/ros/groovy;/home/pi/cb_ws/install/share/console_bridge/cmake
-- This workspace overlays: /home/pi/catkin_ws/devel;/opt/ros/groovy/ros_catkin_ws/devel_isolated/rosbag;/opt/ros/groovy
However, then I get the following build error:
CMake Error at /opt/ros/groovy/share/catkin/cmake/catkin_package.cmake:173 (message):
catkin_package() CATKIN_DEPENDS on 'console_bridge', which has been found
in
'/home/pi/cb_ws/install/share/console_bridge/cmake/console_bridge-config.cmake',
but it is not a catkin package
Call Stack (most recent call first):
/opt/ros/groovy/share/catkin/cmake/catkin_package.cmake:98 (_catkin_package)
class_loader/CMakeLists.txt:11 (catkin_package) -- Configuring incomplete, errors occurred! make: *** [cmake_check_build_system] Error 1 Invoking "make cmake_check_build_system" failed
As a side note, is there some sort of "verbatim" mode where I can put the output here so that it is readable? Currently I am adding a bunch of \<p\>'s in random places to make the output readable in the posts above.
Please edit your question so you can use more markup and be more verbose. And what version of these packages are you using? You shouldn't have to "hack" out kdl from geometry if you're using a consistent set of versions.
If I shouldn't need to hack out kdl then I definitely have bigger problems. I will start there. Here is why I need to hack out kdl. If I go to the ROS wiki and find the page for geometry, and go to the git repo (here) it is obvious to me that geometry is a wet package because each package within it has a package.xml file. However, if I find the orocos_kdl package (which is a dependency for kdl_conversions), and I go to the link to the git repo (here), it is a dry package because it has no package.xml file. Since a wet package cannot depend on a dry package, I came to the conclusion that I must hack it out.
I think for that you want the bloom branch: http://git.mech.kuleuven.be/?p=robotics/orocos_kinematics_dynamics.git;a=tree;h=refs/heads/bloom;hb=bloom