Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ROS packages XML parsing error #1

Closed
heregoesmarcel opened this issue Feb 24, 2019 · 1 comment
Closed

ROS packages XML parsing error #1

heregoesmarcel opened this issue Feb 24, 2019 · 1 comment
Assignees

Comments

@heregoesmarcel
Copy link
Collaborator

heregoesmarcel commented Feb 24, 2019

Commands like roscd, rospack, etc. throw the following exception on execution/automatic insertion:

roscd terminate called after throwing an instance of 'rospack::Exception'
  what():  error parsing manifest of package smclib at /home/user/ros_catkin_ws/install_isolated/share/smclib/package.xml
terminate called after throwing an instance of 'rospack::Exception'
  what():  error parsing manifest of package smclib at /home/user/ros_catkin_ws/install_isolated/share/smclib/package.xml

Currently applying the fix mentioned in ros/rospack/issues/77.

Steps taken:

  • uninstalled libtinyxml2-4 and libtinyxml2-dev via apt
  • installed leethomason/tinyxml2 from source
  • roscd is unable to find explicit libtinnyxml2.so.4 version due to >5 being installed
  • executing catkin_make in svo_workspace produces:
==> make -j1 -l1 in '/home/user/ros_catkin_ws/build_isolated/rospack'
make[2]: *** No rule to make target '/usr/lib/arm-linux-gnueabihf/libtinyxml2.so', needed by '/home/user/ros_catkin_ws/devel_isolated/rospack/lib/librospack.so'.  Stop.
CMakeFiles/Makefile2:365: recipe for target 'CMakeFiles/rospack.dir/all' failed
make[1]: *** [CMakeFiles/rospack.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
<== Failed to process package 'rospack': 
  Command '['/home/user/ros_catkin_ws/install_isolated/env.sh', 'make', '-j1', '-l1']' returned non-zero exit status 2

Reproduce this error by running:
==> cd /home/user/ros_catkin_ws/build_isolated/rospack && /home/user/ros_catkin_ws/install_isolated/env.sh make -j1 -l1

Command failed, exiting.
  • tried the same with leethomason/tinyxml2#496 and mikaelarguedas/tinyxml2/tree/4.0.1-patch but keep ending up with the same result.
  • currently rebuilding the ROS workspace with execution of
    rosdep install --from-paths src --ignore-src --rosdistro melodic -y --os=debian:stretch
    and
    ./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release
    to include updated dependency.

The painful alternative seems to be replacing the header tag of the package.xml inside every single ROS package with
<package format="2" xmlns:xsi="http://www.w3.org/2001/XMLSchema" xsi:noNamespaceSchemaLocation="http://download.ros.org/schema/package_format2.xsd" >
Could this fix result in more errors on the go?

@heregoesmarcel heregoesmarcel self-assigned this Feb 24, 2019
@heregoesmarcel
Copy link
Collaborator Author

heregoesmarcel commented Feb 28, 2019

Update:
Rebuilding the workspace with the mentioned commands did not fix the issue.

Went as far as to create a new workspace but walked into vcstools/wstool/issues/130 regarding wstool and vcstools which lead to not being able to setup the new ws.
Installing updated versions of vcstools and wstool from PyPi and current master builds did not manage to fix this.

Decided to roll all changes back and go with the XML tag workaround for all affected ROS packages and managed to properly execute all broken ROS shell commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant