ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | Q&A
Ask Your Question

Problem building ar_kinect

asked 2015-05-14 15:32:20 -0500

Leandro gravatar image

updated 2015-06-06 12:03:47 -0500

Hello everyone,

Can anyone help me? I'm working with ROS Indigo on Ubuntu 14.04.

I need to read some tags through artoolkit using a kinect camera. I had cloned ar_kinect into my catkin_workspace and if I rospack find ar_kinect I get /home/leandrosavieira/catkin_ws/src/ar_kinect.

However, when I try to build the catkin_workspace through catkin_make --pkg ar_kinect, I receive an error that the package is not found:

Base path: /home/leandrosavieira/catkin_ws
Source space: /home/leandrosavieira/catkin_ws/src
Build space: /home/leandrosavieira/catkin_ws/build
Devel space: /home/leandrosavieira/catkin_ws/devel
Install space: /home/leandrosavieira/catkin_ws/install
Packages "ar_kinect" not found in the workspace

Am I doing anything wrong? I'm new with ROS and I need to make this work soon.

--EDIT 1:

I also tried to build the package ar_kinect using rosmake ar_kinect, but I get the following error:

[ rosmake ] rosmake starting...                                                 
[ rosmake ] Packages requested are: ['ar_kinect']                               
[ rosmake ] Logging to directory /home/leandrosavieira/.ros/rosmake/rosmake_output-20150514-170831
[ rosmake ] Expanded args ['ar_kinect'] to:
[rosmake-0] Starting >>> catkin [ make ]                                        
[rosmake-0] Finished <<< catkin ROS_NOBUILD in package catkin
 No Makefile in package catkin
[rosmake-1] Starting >>> tf [ make ]                                            
[rosmake-1] Finished <<< tf ROS_NOBUILD in package tf
 No Makefile in package tf
[rosmake-1] Starting >>> ar_pose [ make ]                                       
[rosmake-3] Starting >>> pcl_ros [ make ]                                       
[rosmake-1] Finished <<< ar_pose ROS_NOBUILD in package ar_pose
 No Makefile in package ar_pose
[rosmake-3] Finished <<< pcl_ros ROS_NOBUILD in package pcl_ros
 No Makefile in package pcl_ros
[rosmake-3] Starting >>> ar_kinect [ make ]                                     
[ rosmake ] Last 40 lines_kinect: 3.1 sec ]          [ 1 Active 67/68 Complete ]
  -- Using CMAKE_PREFIX_PATH: /home/leandrosavieira/catkin_ws/devel;/opt/ros/indigo
  -- This workspace overlays: /home/leandrosavieira/catkin_ws/devel;/opt/ros/indigo
  -- Using PYTHON_EXECUTABLE: /usr/bin/python
  -- Using Debian Python package layout
  -- Using empy: /usr/bin/empy
  -- Skip enable_testing() for dry packages
  -- Using CATKIN_TEST_RESULTS_DIR: /home/leandrosavieira/catkin_ws/src/ar_kinect/build/test_results
  -- Found gtest sources under '/usr/src/gtest': gtests will be built
  -- Using Python nosetests: /usr/bin/nosetests-2.7
  -- catkin 0.6.11
  -- Using these message generators: gencpp;genlisp;genpy
  [rosbuild] Including /opt/ros/indigo/share/roslisp/rosbuild/roslisp.cmake
  [rosbuild] Including /opt/ros/indigo/share/roscpp/rosbuild/roscpp.cmake
  [rosbuild] Including /opt/ros/indigo/share/rospy/rosbuild/rospy.cmake
  -- Configuring done
  -- Generating done
  -- Build files have been written to: /home/leandrosavieira/catkin_ws/src/ar_kinect/build
  cd build && make -j4 -l4
  make[1]: Entering directory `/home/leandrosavieira/catkin_ws/src/ar_kinect/build'
  make[2]: Entering directory `/home/leandrosavieira/catkin_ws/src/ar_kinect/build'
  make[3]: Entering directory `/home/leandrosavieira/catkin_ws/src/ar_kinect/build'
  make[3]: Leaving directory `/home/leandrosavieira/catkin_ws/src/ar_kinect/build'
  [  0%] Built target rospack_genmsg_libexe
  make[3]: Entering directory `/home/leandrosavieira/catkin_ws/src/ar_kinect/build'
  make[3]: Leaving directory `/home/leandrosavieira/catkin_ws/src/ar_kinect/build'
  [  0%] Built target rosbuild_precompile
  make[3]: Entering directory `/home/leandrosavieira/catkin_ws/src/ar_kinect/build'
  make[3]: Leaving directory `/home/leandrosavieira/catkin_ws/src/ar_kinect/build'
  make[3]: Entering directory `/home/leandrosavieira/catkin_ws/src/ar_kinect/build'
  Linking CXX executable ../bin/ar_kinect
  /usr/bin/ld: it was not possible to find -lar_pose
  collect2: error: ld returned 1 exit status
  make[3]: ** [../bin ...
edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2015-06-06 16:02:03 -0500

fergs gravatar image

ar_kinect is a build nightmare due to the difficulty of building/installing ar_toolkit -- neither project is really maintained at the moment. I highly suggest looking at ar_track_alvar as a stable, robust tag tracking system (and I'm the author of ar_kinect).

edit flag offensive delete link more

answered 2015-06-06 11:06:03 -0500

Tanmay gravatar image


I think ar_kinect is a rosbuild package in the first place, in which case I'm not sure it should be installed in a catkin workspace. Try configuring a indigo_workspace (through the rosbuild system), and installing your package there.

A couple of suggestions - (Could you post an English version of the above message? There's a couple of lines I can't follow, sorry.)

Try using the ar_tools package containing ar_toolkit and ar_pose, rather than the ar_kinect. The developer himself says that those are more generic systems. Also, there is a neat package that I've used before, ar_track_alvar, which provides similar (and additional) functionality. Try that out. You might also want to install the debian versions of ar_track_alvar (sudo apt-get install ros blah blah blah), for which you will not need to compile the source.

I suggest trying to go through a good ros book before that though, so you don't waste time figuriing out things.

edit flag offensive delete link more


Tanmany, thanks for you answer. Sorry, I didn't saw that some parts of the message were in Portuguese, I fixed that. Do you know any good ros book to name? How could I know if a package needs a catkin_workspace or a indigo_workspace? I'm a newbie using ros, so I don't really understand it.

Leandro gravatar image Leandro  ( 2015-06-06 12:09:16 -0500 )edit

The books - 1) ROS by example 2) A gentle introduction to ROS 3) Learn ROS for robotic programming

Go to the CMakeLists file and check the executable definition. If it says rosbuild_add_executable, you know it's a ROSbuild system. You can configure two workspaces together-refer the books for that.

Tanmay gravatar image Tanmay  ( 2015-06-06 18:02:41 -0500 )edit

Also, doing the tutorials of ROS (if you haven't), along with the books is a good idea.

Tanmay gravatar image Tanmay  ( 2015-06-06 18:03:12 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


Asked: 2015-05-14 15:32:20 -0500

Seen: 446 times

Last updated: Jun 06 '15