# catkin_make can't find "visuaization_msgs"

I'm very new to ROS, and fairly new to Linux, so keep in mind I'm pretty confused. I know this isn't enough detail to solve the problem, but if someone could tell me where to start to find out what's wrong it would be a great help.

I'm running ROS Indigo on Ubuntu 14.04

I'm trying to follow this tutorial http://wiki.ros.org/rviz/Tutorials/Ma...

As the tutorial says I've

1. gone to my catkin_ws/src folder and created a package using the command: catkin_create_pkg using_markers roscpp visualization_msgs
2. created the code file in src of that package, as shown
3. modified CMakeLists.txt as shown
4. (Here's where I had to vary from the instructions) the tutorial says

$cd %TOP_DIR_YOUR_CATKIN_WORKSPACE%$ catkin_make

If I go to the folder using_markers and do this it says it "must be invoked in the root of workspace" if I do it in the catkin_ws folder above that, it builds all my projects (which seems ok, but not ideal) if I build using "catkin_make using_markers" it builds and just does that package, so it seems ok, or maybe not, since it isn't working

I could swear it was working before. But now when I try to build it I get this warning

"CMake Error at /opt/ros/indigo/share/catkin/cmake/catkinConfig.cmake:75 (find_package): Could not find a package configuration file provided by "visuaization_msgs" with any of the following names: visuaization_msgsConfig.cmake visuaization_msgs-config.cmake "

It suggests " Add the installation prefix of "visuaization_msgs" to CMAKE_PREFIX_PATH or set "visuaization_msgs_DIR" to a directory containing one of the above files. If "visuaization_msgs" provides a separate development package or SDK, be sure it has been installed. " I've tried and failed to do most of these things, but I don't really know what they mean. I looked at catkinConfig.cmake, but it makes no mention of visualization_msgs. I've searched help but I'm stuck at the moment. Why can't it find visualization_msgs now?

I reinstalled common_msgs with the command "sudo apt-get install ros-indigo-common-msgs", but it said nothing what updated or installed because it was already there. This is the stack that includes visualization_msgs, so it seems like that would mean it's available.

I thought maybe it was that I hadn't sourced it so I ran the command "/opt/ros/indigo/setup.bash" but that didn't seem to help

I figured maybe my installation was messed up so I tried a forced reinstall "sudo apt-get --reinstall install ros-indigo-desktop" That didn't help either.

Maybe it's something simpler? The build command I'm using is "cd catkin_ws" "catkin_make using_markers"

Sorry for the vague question. I'm very confused. Like I said, a suggestion of what to try next would be great.

Thank you!

edit retag close merge delete

Sort by » oldest newest most voted

The useful error message is this one:

"CMake Error at /opt/ros/indigo/share/catkin/cmake/catkinConfig.cmake:75 (find_package): Could not find a package configuration file provided by "visuaization_msgs" with any of the following names: visuaization_msgsConfig.cmake visuaization_msgs-config.cmake "

(emphasis mine)

You have a typo in visualization_msgs, most likely somewhere in your CMakeLists.txt file.

The ROS workspace structure is a little confusing at first, but you will get used to it! Here is a nice diagram showing the different levels: workspace, packages, source code, hope it helps. As you correctly found out, you must call catkin_make from the root of your workspace.

more

Good catch! I did a grep on my history and it looks like in an unrelated process practising making a python package I did this:

catkin_create_pkg python_test rospy visuaization_msgs

But when I built with "catkin_make using_markers" why did a project in a parallel folder effect it?

Thanks!

( 2015-11-03 12:59:48 -0500 )edit

It's really hard to debug without access to your workspace, it could be one of your targets (using_markers) wasn't actually the entire package but some other part.

( 2015-11-04 02:12:38 -0500 )edit