ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
2

Error compiling a package on groovy

asked 2013-03-21 08:57:45 -0600

Jan_w gravatar image

Hi,

when trying to compile a package on groovy I get the following error.

make clean
  make[1]: Entering directory `/home/jworch/groovy_workspace/sandbox/cram_core/3rdparty/alexandria'
  rm -rf alexandria asdf alexandria-20110210.tar.bz2
  rm -f downloaded rospack_nosubdirs installed unpacked
  make[1]: Leaving directory `/home/jworch/groovy_workspace/sandbox/cram_core/3rdparty/alexandria'
  `rospack find rosbuild`/bin/download_checkmd5.py [censored_karma] alexandria-20110210.tar.bz2
  /bin/sh: 1: /opt/ros/groovy/share/rosbuild/bin/download_checkmd5.py: not found
-------------------------------------------------------------------------------}
[ rosmake ] Output from build of package alexandria written to:
[ rosmake ]    /home/jworch/.ros/rosmake/rosmake_output-20130321-194802/alexandria/build_output.log
[rosmake-0] Finished <<< alexandria [FAIL] [ 0.07 seconds ]                                              
[ rosmake ] Halting due to failure in package alexandria.

It it is supposed to pull a tarball which is not held in the package repository. It worked on fuerte and I guess it fails because of the missing *.py file. Is there any substitute on groovy for that file or another/better way to solve this problem? Thanks in advance

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
2

answered 2013-06-13 01:20:45 -0600

I ran into the same problem, and thought it to be an error of rosbuild because download_checkmd5.py was there but could no longer be found using rospack or roscd. I opened up a ticket on github (https://github.com/ros/ros/issues/17).

One of the answers Thomas provided helped me solve the issue: Using the environment variable $ROS_ROOT to get to the script. The line to download the tarball in my Makefile now looks like this:

$(shell echo $$ROS_ROOT)/core/rosbuild/bin/download_checkmd5.py $(TARBALL_URL) $(TARBALL)

I did not try the second solution he proposed (using one of the rosbuild-macros) -- it sure sounds promising.

edit flag offensive delete link more
2

answered 2013-03-22 02:45:48 -0600

Jan_w gravatar image

I was able to "fix" the problem. The problem is that

rospack find rosbuild

points to

/opt/ros/groovy/share/rosbuild/

but the python script is located in

/opt/ros/groovy/share/ros/core/rosbuild/bin/

So my workaround was to create the bin folder and create a symbolic link to the python script. Is there any better solution than this workaround, because to me it seems not to be the final solution but more a bad hack.

edit flag offensive delete link more

Comments

1

Although this should be a highly discouraged solution, it worked for me as a hotfix.

JanWinkler gravatar image JanWinkler  ( 2013-06-03 02:46:03 -0600 )edit

This might be a discouraged solution but it solved my problem. Did you find a better solution to this issue?

Asfandyar Ashraf Malik gravatar image Asfandyar Ashraf Malik  ( 2013-06-18 22:20:21 -0600 )edit
1

Take a look at the answer given by Georg Bartels or the link he posted to an issue at github. Those two "strategies" to solve the problem seems to be the right way to find the path to script.

Jan_w gravatar image Jan_w  ( 2013-06-18 22:31:00 -0600 )edit

Question Tools

1 follower

Stats

Asked: 2013-03-21 08:57:45 -0600

Seen: 323 times

Last updated: Jun 13 '13