0
$\begingroup$

Rosanswers logo

Hello , I am trying to install the cartographer package for ros on my ubuntu 18.04 , I have installed the melodic ros package and followed the instructions provided in this tutorial https://google-cartographer-ros.readthedocs.io/en/latest/index.html to install cartographer.

But when I type the following command:

rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y

My terminal produces this error message:

Error(s) in package '/home/po/catkin_ws/protobuf/php/ext/google/protobuf/package.xml':

Error(s):

  • The "package" tag must not have the following attrtbutes: packageversion, version

  • The manifest of package "protobuf" (with format version 1) must not contain the following tags: extsrcrelease, lead, changelog, providesextension, notes, summary, stability, dependencies, contents, time, date, channel

  • The "version" tag must not contain the following children: release, api

  • The "license" tag must not have the following attributes: uri

My protobuf version is 3.4.1. I don't know how to solve the problem, can someone give me some suggestions?


Originally posted by s090351114 on ROS Answers with karma: 1 on 2020-04-22

Post score: 0


Original comments

Comment by Suri on 2020-05-14:
Any solution for this problem?

Comment by miroslavradojevic on 2020-06-18:
Exactly the same issue was found - would anyone be able to help? Ubuntu 18.04 is used as OS with ROS meodic. Followed installation instructions from https://google-cartographer-ros.readthedocs.io/en/latest/compilation.html#

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

In the future please make sure to include both your instruction and the result/error as copied from the command line. You appear to be running the command with the wrong path. I can reproduce your error by running rosdep install with . instead of src as an argument for the path.

In general protobuf is not a ROS package so should not be in the workspace. You are either making the scope of the rosdep path to large, or are installing the protobuf inside the workspace incorrectly.

Note that I get other errors as I haven't setup all the necessary system dependencies, but rosdep doesn't error out due to the invalid package.xml

tfoote@snowman4:/tmp/catkin_ws Last: [0] (0s Seconds)
$ rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y
WARNING: ROS_PYTHON_VERSION is unset. Defaulting to 2
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
cartographer_ros_msgs: Cannot locate rosdep definition for [std_msgs]
cartographer: Cannot locate rosdep definition for [catkin]
cartographer_ros: Cannot locate rosdep definition for [rosunit]
cartographer_rviz: Cannot locate rosdep definition for [rviz]
ceres-solver: Cannot locate rosdep definition for [catkin]

And with the path changed.

tfoote@snowman4:/tmp/catkin_ws Last: [1] (1s Seconds)
$ rosdep install --from-paths . --ignore-src --rosdistro=${ROS_DISTRO} -y
WARNING: ROS_PYTHON_VERSION is unset. Defaulting to 2
Error(s) in package '/tmp/catkin_ws/protobuf/php/ext/google/protobuf/package.xml':
Error(s):
- The "package" tag must not have the following attributes: packagerversion, version
- The manifest of package "protobuf" (with format version 1) must not contain the following tags: extsrcrelease, lead, changelog, providesextension, notes, summary, stability, dependencies, contents, time, date, channel
- The "version" tag must not contain the following children: release, api
- The "license" tag must not have the following attributes: uri

Another solution is to drop a CATKIN_IGNORE file in the protobuf directory, but I'd recommend making sure you're following the tutorial as documented to make sure you don't run into other snafus down the line based on assumptions about the path.


Originally posted by tfoote with karma: 58457 on 2020-06-19

This answer was ACCEPTED on the original site

Post score: 0

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.