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

How to update diagnostics on Groovy built from source (into Odroid)?

asked 2014-06-24 15:22:19 -0600

goshawk gravatar image

updated 2014-07-14 12:13:11 -0600

I am trying to add the diagnostics package (from the git repo) that contains the python API. I have successfully added it to ROS fuerte but I cannot get it to work on the odroid that runs groovy built from source.

I added the diagnostics groovy-devel branch to my packages folder. I tried to catkin_make the whole workspace with the new package added, but since I have some fuerte packages (or maybe packages that were built from source), I get an error from catkin_make.

Is there a way to just compile or build one package in Groovy? What do ROS+odroid users do for diagnostics?

EDIT 1

I tried to run sudo apt-get install ros-groovy-diagnostics to get the released version of diagnsotics, which has the python API but I got the following error:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
libfontconfig1 : Depends: fontconfig-config (= 2.9.0-7.1) but 2.8.0-3ubuntu9.1 is to be installed
libfontconfig1-dev : Depends: libfontconfig1 (= 2.8.0-3ubuntu9.1) but 2.9.0-7.1 is to be installed
ros-groovy-diagnostics : Depends: ros-groovy-self-test but it is not going to be installed
                          Depends: ros-groovy-diagnostic-updater but it is not going to be installed
                          Depends: ros-groovy-diagnostic-common-diagnostics but it is not going to be installed
                          Depends: ros-groovy-diagnostic-analysis but it is not going to be installed
                          Depends: ros-groovy-diagnostic-aggregator but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

I then ran apt-get -f install and got :

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... failed.
The following packages have unmet dependencies:
 libfontconfig1 : Depends: fontconfig-config (= 2.9.0-7.1) but 2.8.0-3ubuntu9.1 is installed
 libfontconfig1-dev : Depends: libfontconfig1 (= 2.8.0-3ubuntu9.1) but 2.9.0-7.1 is installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
E: Unable to correct dependencies

Is there a way for me to add the diagnostics package that I download from the git repo to my groovy without dealing with these other issues?

EDIT 2

Before cloning the new diagnostics package I ran catkin_make_isolated and was succesful in making the current packages over again. I then cloned the repo to my src file in my workspace (There was an old version of diagnostics packages there so I made a backup of them and deleted them before cloning the new package).

After this operation though I got the following error when I ran catkin_make_isolated:

==> Processing catkin package: 'diagnostics'
==> Building with env: '/media/home/ros/devel_isolated/cpp_common/env.sh'
==> cmake /media/home/ros/src/diagnostics/diagnostics -DCATKIN_DEVEL_PREFIX=/media/home/ros/devel_isolated/diagnostics -DCMAKE_INSTALL_PREFIX=/media/home/ros/install_isolated in '/media/home/ros/build_isolated/diagnostics'
CMake Error: The source "/media/home/ros/src/diagnostics/diagnostics/CMakeLists.txt" does not match the source "/media/home/ros/build_isolated/diagnostics/CMakeLists.txt" used to generate cache.  Re-run cmake with a different ...
(more)
edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
1

answered 2014-07-08 15:55:14 -0600

joq gravatar image

You can build diagnostics from source by adding it to your catkin workspace.

The source repository is here: https://github.com/ros/diagnostics . Check out the groovy-devel branch and build that.

If you don't know how to make an overlay the catkin tutorials are helpful. Or, ask and we will supply more details.

edit flag offensive delete link more

Comments

Please see Edit 3.

goshawk gravatar image goshawk  ( 2014-07-11 21:58:31 -0600 )edit

You probably need to source the setup.bash in the install_isolated directory.

joq gravatar image joq  ( 2014-07-14 12:18:08 -0600 )edit

I sourced the setup.bash file in install_isolated. When I now do 'roscd diagnostic_updater' it points to the src/diagnostic_updater which I assume is not even built yet. Another weird thing is that when I do 'roscd' it takes me to tf_conversions under ros/devel_isolated...

goshawk gravatar image goshawk  ( 2014-07-14 12:37:24 -0600 )edit

sounds like your workspace environment is mangled

joq gravatar image joq  ( 2014-07-14 12:52:27 -0600 )edit

Do you know of any ros answer that describe how to untangle it? Since this is an ARM based computer, it is really difficult to rebuild ros from source.

goshawk gravatar image goshawk  ( 2014-07-14 12:56:03 -0600 )edit

I am sure it is. I don't know how to fix a catkin workspace once its environment has gone bad. I generally delete the devel and build spaces, source the proper workspace dependencies and build it again. I understand that you do not want to do that, but can suggest no viable alternative.

joq gravatar image joq  ( 2014-07-14 18:27:01 -0600 )edit

I copied the diagnostic_updater folder that contains the python library to lib/python2.7/dist_packages/ where all other ros-python libraries seem to be and it all worked. Hooray for temporary shortcuts!

goshawk gravatar image goshawk  ( 2014-07-15 11:27:17 -0600 )edit
1

answered 2014-06-24 15:45:35 -0600

William gravatar image

I don't know anything about odroid, but you cannot and should not mix catkin packages from Fuerte and Groovy. The version of catkin in Fuerte was very different from the current version which exists, almost unchanged, between Groovy, Hydro, and Indigo.

Additionally, it is extremely difficult to help you with just "I get an error from catkin_make.". Maybe if you provide us with the error and how you produced your error we can give more feedback.

P.S., if you choose to add more information, please _edit_ your original question rather than posting the update in an answer or a very long comment.

edit flag offensive delete link more

Comments

please see Edit

goshawk gravatar image goshawk  ( 2014-07-14 12:14:00 -0600 )edit

Question Tools

1 follower

Stats

Asked: 2014-06-24 15:22:19 -0600

Seen: 653 times

Last updated: Jul 14 '14