Ask Your Question
5

Problem with catkin_make

asked 2013-03-03 04:47:28 -0500

phbou72 gravatar image

updated 2013-03-03 06:22:11 -0500

joq gravatar image

One of my teamates can't compile our school project. The catkin_make command give this error :

ImportError: "from catkin_pkg.topological_order import topological_order" failed: No module named catkin_pkg.packages
Make sure that you have installed "catkin_pkg", it is up to date and on the PYTHONPATH.

We compared our PYTHONPATH and we have the same :

/opt/ros/groovy/lib/python2.7/dist-packages

We tried to reinstall ROS completely, but it doesn't work even after that.

Any suggestion to fix this?

edit retag flag offensive close merge delete

Comments

Did you do sudo apt-get install python-catkin-pkg? It should tell you that it's already installed.

dornhege gravatar imagedornhege ( 2013-03-03 05:28:02 -0500 )edit

Yes we dit.

phbou72 gravatar imagephbou72 ( 2013-03-03 05:34:16 -0500 )edit

And if so, make sure there is no old version of catkin_pkg in /usr/local/lib/python2.7/dist-packages

KruseT gravatar imageKruseT ( 2013-03-03 05:35:08 -0500 )edit

What should we do? Delete catkin_pkg in /usr/local/lib/python2.7/dist-packages?

phbou72 gravatar imagephbou72 ( 2013-03-03 05:38:11 -0500 )edit

Yes, delete any catkin stuff in /usr/local.

joq gravatar imagejoq ( 2013-03-03 05:51:45 -0500 )edit

There's nothing : (. His ubuntu install is almost pristine too...

phbou72 gravatar imagephbou72 ( 2013-03-03 06:14:53 -0500 )edit

3 Answers

Sort by ยป oldest newest most voted
9

answered 2013-03-03 21:24:42 -0500

KruseT gravatar image

updated 2013-10-24 04:10:03 -0500

  1. sudo apt-get install python-catkin-pkg
  2. sudo rm -rf /usr/local/lib/python2.7/dist-packages/catkin*
  3. sudo dpkg -L python-catkin-pkg

    This shows you where apt installed catkin_pkg to, this one should be found.

  4. python -c 'import catkin_pkg; print(catkin_pkg.__file__)'

    This shows you where it actually finds catkin_pkg, if it is different from the above, delete the folder

  5. python -c 'import sys; print(sys.path)'

    This shows you all places where it looks for catkin_pkg

UPDATE:

python2.7 finds the installed code at /usr/lib/pymodules/python2.7, As explained by @joq. if you do not see catkin_pkg folder in there, you need to

sudo apt-get install --reinstall python-catkin-pkg
edit flag offensive delete link more

Comments

Using the above, I found that my catkin_pkg is installed in '/usr/share/pyshared/catkin_pkg', so I added this to my .bashrc file: export PYTHONPATH=/usr/share/pyshared:${PYTHONPATH}

oferbtl gravatar imageoferbtl ( 2013-10-08 01:10:13 -0500 )edit
2

The package installs there, but it is not where PYTHONPATH should point. Post-install should have created compiled modules for each python version you have installed, e.g. /usr/lib/pymodules/python2.7/catkin_pkg/*. Those should be in your python path automatically.

joq gravatar imagejoq ( 2013-10-08 06:19:37 -0500 )edit

Could reproduce on some machine with electirc and fuerte installed. When running sudo aptitude reinstall python-catkin-pkg, the relay code appeared.

KruseT gravatar imageKruseT ( 2013-10-24 04:06:11 -0500 )edit
1

@joq, I tried the: "sudo apt-get install --reinstall python-catkin-pkg" and it did install the catkin_pkg in /usr/lib/pymodules/python2.7. However, I checked afterward and did not find that folder in the python search path (python also failed to import the catkin_pkg). I manually appended the path to the PYTHONPATH and python succeeded to find the catkin_pkg. However, I hesitate to change the PYTHONPATH and was hoping that the post install adds it to the search path, but it doesn't seem so. Is it supposed to? what could be wrong? I would appreciate your help. Thanks.

Mo gravatar imageMo ( 2013-12-18 06:51:34 -0500 )edit

That should be in your PYTHONPATH. Did you source /opt/ros/groovy/setup.bash correctly? What does `echo $PYTHONPATH` show?

joq gravatar imagejoq ( 2013-12-18 08:29:42 -0500 )edit

catkin_pkg is a system package - not a catkin package. It is not necessary to source any setup file nor does the PYTHONPATH need to be set.

Dirk Thomas gravatar imageDirk Thomas ( 2013-12-18 08:33:18 -0500 )edit

@Mo please consider posting the output of the commands (especially 3, 4 and 5) @KruseT has mentioned in his answer for further help.

Dirk Thomas gravatar imageDirk Thomas ( 2013-12-18 08:34:58 -0500 )edit

Thanks for the reply. I source the setup.bash since afterward I want to catkin a workspace. Below are the variables and python search path. Please note this is running on a test server (travis). *** Sourcing ROS setup: /opt/ros/hydro ROS_PACKAGE_PATH: /opt/ros/hydro/share:/opt/ros/hydro/stacks ***PYTHONPATH: /opt/ros/hydro/lib/python2.7/dist-packages ***Python search path (sys.path): ['', '/opt/ros/hydro/lib/python2.7/dist-packages', '/home/travis/virtualenv/python2.7/lib/python2.7', '/home/travis/virtualenv/python2.7/lib/python2.7/plat-linux2', '/home/travis/virtualenv/python2.7/lib/python2.7/lib-tk', '/home/travis/virtualenv/python2.7/lib/python2.7/lib-old', '/home/travis/virtualenv/python2.7/lib/python2.7/lib-dynload', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/home/travis/virtualenv/python2.7/local/lib/python2.7/site-packages', '/home/travis/virtualenv/python2.7/lib/python2.7/site-packages']

Mo gravatar imageMo ( 2013-12-18 08:39:11 -0500 )edit
0

answered 2018-09-26 00:15:28 -0500

Chad Rockey gravatar image

As mentioned in this related answer https://answers.ros.org/question/2502...

Also check PYTHON_EXECUTABLE. I had a 3rd party program put a line in my bashrc that sourced a different PYTHON_EXECUTABLE. It resulted in an error message about catkin_pkg that brought me to this answer.

edit flag offensive delete link more
0

answered 2016-11-28 05:32:43 -0500

Prajankya gravatar image

I had the same problem, I had installed ros on python 2 and then sometime afterwards shifted to python 3

Simply I changed the symlink of python from python3 back to python2

edit flag offensive delete link more

Your Answer

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

Add Answer

Question Tools

Stats

Asked: 2013-03-03 04:47:28 -0500

Seen: 17,515 times

Last updated: Sep 26 '18