Coder Social home page Coder Social logo

Comments (18)

mbforbes avatar mbforbes commented on July 28, 2024

Update: fixed mongodb problem with

$ sudo apt-get install ros-groovy-warehousewg

common_msgs question still stands!

from pr2_object_manipulation.

mateiciocarlie avatar mateiciocarlie commented on July 28, 2024

Thanks for the interest!

I am however seeing the same problem... It's interesting - after doing apt-get install pr2_object_manipulation I had to apt-get a bunch more packages by hand. I wonder how the build farm succeeds in building this...

Anyways, at some point I also get stuck with common_msgs. When trying to rosbuild pr2_interactive_object_detection, I get the following:

[  7%] Generating ../src/pr2_interactive_object_detection/msg/_UserCommandFeedback.py
Traceback (most recent call last):
  File "/opt/ros/groovy/share/rospy/rosbuild/scripts/genutil.py", line 131, in genmain
    retcode = generate_messages(rospack, package, msg_file, subdir)
  File "/opt/ros/groovy/share/rospy/rosbuild/scripts/genutil.py", line 90, in generate_messages
    for d in rospack.get_depends(package):
  File "/usr/lib/pymodules/python2.7/rospkg/rospack.py", line 227, in get_depends
    s.update(self.get_depends(p, implicit))
  File "/usr/lib/pymodules/python2.7/rospkg/rospack.py", line 227, in get_depends
    s.update(self.get_depends(p, implicit))
  File "/usr/lib/pymodules/python2.7/rospkg/rospack.py", line 227, in get_depends
    s.update(self.get_depends(p, implicit))
  File "/usr/lib/pymodules/python2.7/rospkg/rospack.py", line 227, in get_depends
    s.update(self.get_depends(p, implicit))
  File "/usr/lib/pymodules/python2.7/rospkg/rospack.py", line 221, in get_depends
    names = [p.name for p in self.get_manifest(name).depends]
  File "/usr/lib/pymodules/python2.7/rospkg/rospack.py", line 159, in get_manifest
    return self._load_manifest(name)
  File "/usr/lib/pymodules/python2.7/rospkg/rospack.py", line 198, in _load_manifest
    retval = self._manifests[name] = parse_manifest_file(self.get_path(name), self._manifest_name)
  File "/usr/lib/pymodules/python2.7/rospkg/rospack.py", line 190, in get_path
    raise ResourceNotFound(name, ros_paths=self._ros_paths)
ResourceNotFound: common_msgs
ROS path [0]=/opt/ros/groovy/share/ros
ROS path [1]=/home/matei/sandbox/pr2_manipulation
ROS path [2]=/opt/ros/groovy/share
ROS path [3]=/opt/ros/groovy/stacks
ERROR: common_msgs
ROS path [0]=/opt/ros/groovy/share/ros
ROS path [1]=/home/matei/sandbox/pr2_manipulation
ROS path [2]=/opt/ros/groovy/share
ROS path [3]=/opt/ros/groovy/stacks
make[3]: *** [../src/pr2_interactive_object_detection/msg/_UserCommandFeedback.py] Error 3

It is fairly strange, as I do have common-msgs installed. If I put an explicit dependency on it manifest.xml, I get the good old:

[rospack] Error: package/stack 'pr2_interactive_object_detection' depends on non-existent package 'common_msgs' and rosdep claims that it is not a system dependency. Check the ROS_PACKAGE_PATH or try calling 'rosdep update'

What am I missing? Haven't done rosbuild in a while, maybe it's something obvious :)

@wjwwood, @dirk-thomas - any thoughts?

from pr2_object_manipulation.

wjwwood avatar wjwwood commented on July 28, 2024

Did you source the /opt/ros/groovy/setup.bash? Do you have common_msgs from groovy installed, i.e. ros-groovy-common-msgs and not ros-hydro-common-msgs?

Have you done sudo rosdep init and rosdep update?

from pr2_object_manipulation.

mbforbes avatar mbforbes commented on July 28, 2024

Thanks so much for the reply! (I also asked this a few minutes before you posted on ROS answers, so we'll see if there are any takers...) I'm not sure if it's comforting or not that you have the same problem :-)

@wjwwood regrettably my answer is yes to all questions; roscd common_msgs takes me to /opt/ros/groovy/share/common_msgs, which contains just a lonely package.xml file.

from pr2_object_manipulation.

mateiciocarlie avatar mateiciocarlie commented on July 28, 2024

@wjwwood - thanks for pitching in!

My answer is also yes to all your questions...

from pr2_object_manipulation.

wjwwood avatar wjwwood commented on July 28, 2024

Oh, common_msgs is actually a metapackage (formerly a stack), and a package cannot depend on a stack nor a metapackage. Therefore, I think pr2_interactive_object_detection should not depend on common_msgs, but instead on one or more of the packages in common_msgs:

http://wiki.ros.org/common_msgs

from pr2_object_manipulation.

mateiciocarlie avatar mateiciocarlie commented on July 28, 2024

Oh - it does not explicitly depend on it (I just tried adding that to see if it fixes the problem). In fact, the only mention of common_msgs in the entire stack is actually in stack.xml:

matei@lga:~/sandbox/pr2_manipulation$ grep -r common_msgs .
./pr2_object_manipulation/stack.xml:  <depend stack="common_msgs" /> <!-- nav_msgs, stereo_msgs, actionlib_msgs, trajectory_msgs, sensor_msgs, geometry_msgs, visualization_msgs, diagnostic_msgs -->

from pr2_object_manipulation.

wjwwood avatar wjwwood commented on July 28, 2024

I dunno the problem seems to be during compile time which is weird, I think we need the value of package from line in the tracebacks:

File "/opt/ros/groovy/share/rospy/rosbuild/scripts/genutil.py", line 90, in generate_messages
    for d in rospack.get_depends(package):

What ever package was set to when the exception occurred is the probably the issue. I think this may be bubbling up from dynamic reconfigure generation, but I don't know.

from pr2_object_manipulation.

dirk-thomas avatar dirk-thomas commented on July 28, 2024

I checkout this repo (1ab5d0f) and installed all dependencies (rosdep check ouputting only All system dependencies have been satisified).

The following rosmake pr2_object_manipulation failed with the following plain compile errors:

/opt/ros/groovy/include/geometric_shapes/bodies.h:159:16: note:   no known conversion for argument 1 from ‘tf::Vector3’ to ‘const Vector3d& {aka const Eigen::Matrix<double, 3, 1>&}’
/tmp/pr2_object_manipulation/perception/robot_self_filter_color/src/self_mask_color.cpp: In member function ‘int robot_self_filter_color::SelfMask::getMaskContainment(const tf::Vector3&) const’:
/tmp/pr2_object_manipulation/perception/robot_self_filter_color/src/self_mask_color.cpp:441:42: error: no matching function for call to ‘bodies::Body::containsPoint(const tf::Vector3&)’
/tmp/pr2_object_manipulation/perception/robot_self_filter_color/src/self_mask_color.cpp:441:42: note: candidates are:
In file included from /tmp/pr2_object_manipulation/perception/robot_self_filter_color/include/robot_self_filter_color/self_mask_color.h:34:0,
                 from /tmp/pr2_object_manipulation/perception/robot_self_filter_color/src/self_mask_color.cpp:30:
/opt/ros/groovy/include/geometric_shapes/bodies.h:152:8: note: bool bodies::Body::containsPoint(double, double, double, bool) const
/opt/ros/groovy/include/geometric_shapes/bodies.h:152:8: note:   candidate expects 4 arguments, 1 provided
/opt/ros/groovy/include/geometric_shapes/bodies.h:159:16: note: virtual bool bodies::Body::containsPoint(const Vector3d&, bool) const
/opt/ros/groovy/include/geometric_shapes/bodies.h:159:16: note:   no known conversion for argument 1 from ‘const tf::Vector3’ to ‘const Vector3d& {aka const Eigen::Matrix<double, 3, 1>&}’
/tmp/pr2_object_manipulation/perception/robot_self_filter_color/src/self_mask_color.cpp: In member function ‘int robot_self_filter_color::SelfMask::getMaskIntersection(const tf::Vector3&, const boost::function<void(const tf::Vector3&)>&) const’:
/tmp/pr2_object_manipulation/perception/robot_self_filter_color/src/self_mask_color.cpp:459:50: error: no matching function for call to ‘bodies::Body::containsPoint(const tf::Vector3&)’
/tmp/pr2_object_manipulation/perception/robot_self_filter_color/src/self_mask_color.cpp:459:50: note: candidates are:
In file included from /tmp/pr2_object_manipulation/perception/robot_self_filter_color/include/robot_self_filter_color/self_mask_color.h:34:0,
                 from /tmp/pr2_object_manipulation/perception/robot_self_filter_color/src/self_mask_color.cpp:30:
/opt/ros/groovy/include/geometric_shapes/bodies.h:152:8: note: bool bodies::Body::containsPoint(double, double, double, bool) const
/opt/ros/groovy/include/geometric_shapes/bodies.h:152:8: note:   candidate expects 4 arguments, 1 provided
/opt/ros/groovy/include/geometric_shapes/bodies.h:159:16: note: virtual bool bodies::Body::containsPoint(const Vector3d&, bool) const
/opt/ros/groovy/include/geometric_shapes/bodies.h:159:16: note:   no known conversion for argument 1 from ‘const tf::Vector3’ to ‘const Vector3d& {aka const Eigen::Matrix<double, 3, 1>&}’
/tmp/pr2_object_manipulation/perception/robot_self_filter_color/src/self_mask_color.cpp:475:70: error: no matching function for call to ‘bodies::Body::intersectsRay(const tf::Vector3&, tf::Vector3&, std::vector<tf::Vector3>*, int)’
/tmp/pr2_object_manipulation/perception/robot_self_filter_color/src/self_mask_color.cpp:475:70: note: candidate is:
In file included from /tmp/pr2_object_manipulation/perception/robot_self_filter_color/include/robot_self_filter_color/self_mask_color.h:34:0,
                 from /tmp/pr2_object_manipulation/perception/robot_self_filter_color/src/self_mask_color.cpp:30:
/opt/ros/groovy/include/geometric_shapes/bodies.h:165:16: note: virtual bool bodies::Body::intersectsRay(const Vector3d&, const Vector3d&, EigenSTL::vector_Vector3d*, unsigned int) const
/opt/ros/groovy/include/geometric_shapes/bodies.h:165:16: note:   no known conversion for argument 1 from ‘const tf::Vector3’ to ‘const Vector3d& {aka const Eigen::Matrix<double, 3, 1>&}’
/tmp/pr2_object_manipulation/perception/robot_self_filter_color/src/self_mask_color.cpp:487:48: error: no matching function for call to ‘bodies::Body::containsPoint(const tf::Vector3&)’
/tmp/pr2_object_manipulation/perception/robot_self_filter_color/src/self_mask_color.cpp:487:48: note: candidates are:
In file included from /tmp/pr2_object_manipulation/perception/robot_self_filter_color/include/robot_self_filter_color/self_mask_color.h:34:0,
                 from /tmp/pr2_object_manipulation/perception/robot_self_filter_color/src/self_mask_color.cpp:30:
/opt/ros/groovy/include/geometric_shapes/bodies.h:152:8: note: bool bodies::Body::containsPoint(double, double, double, bool) const
/opt/ros/groovy/include/geometric_shapes/bodies.h:152:8: note:   candidate expects 4 arguments, 1 provided
/opt/ros/groovy/include/geometric_shapes/bodies.h:159:16: note: virtual bool bodies::Body::containsPoint(const Vector3d&, bool) const
/opt/ros/groovy/include/geometric_shapes/bodies.h:159:16: note:   no known conversion for argument 1 from ‘const tf::Vector3’ to ‘const Vector3d& {aka const Eigen::Matrix<double, 3, 1>&}’

from pr2_object_manipulation.

mbforbes avatar mbforbes commented on July 28, 2024

Thanks @wjwwood and @dirk-thomas for checking this out.

@dirk-thomas did you also run into the common_msgs problem, and if so, were you able to overcome it merely via apt-get?

I've had two others in my lab try this out as well; one person got as far as I did (common_msgs), while the other didn't have the problem but wound up with the compile errors that @dirk-thomas did.

My thought now is to try to overlay a catkin workspace with a common_msgs groovy-devel build and get pr2_object_manipulation to use that, then tackle the compile errors, but no dice so far (too many versions of build tools, something's wrong). Any additional tips would be greatly appreciated!

from pr2_object_manipulation.

KaijenHsiao avatar KaijenHsiao commented on July 28, 2024

robot_self_filter_color is just a copy of robot_self_filter with xyz points changed to xyzrgb points, so whatever has changed about robot_self_filter that allows it to compile needs to be done to robot_self_filter_color also. (Check if robot_self_filter compiles first.)

from pr2_object_manipulation.

dirk-thomas avatar dirk-thomas commented on July 28, 2024

I did not run into any problem with common_msgs. I had everything installed from Debian packages and only this repo checked out.

from pr2_object_manipulation.

mateiciocarlie avatar mateiciocarlie commented on July 28, 2024

Is it maybe a problem of what else is installed on the machine?

I have hydro installed as well (although I do start with a clean bash environment every time with). @mbforbes : maybe the folks who managed to compile do not have hydro at all?

The robot_self_filter problem I think is caused by having MoveIt! installed instead of / along with the old arm_navigation.

from pr2_object_manipulation.

mbforbes avatar mbforbes commented on July 28, 2024

Ah, thank you @mateiciocarlie, after a bit of checking the hydro installation seems likely to be the problem. I also have MoveIt!, so I'd likely get that error as well. I appreciate the help. I'll try these out when I get to a fresh machine.

from pr2_object_manipulation.

jstnhuang avatar jstnhuang commented on July 28, 2024

(I'm Max's labmate). I'm having the same compiler errors as Dirk. If I just try to compile the package I want to modify (pr2_marker_control), there's actually a different error, which is that pr2_marker_control uses the arm_navigation stack, which tries to use shapes::StaticShape, which appears to be in fuerte but not groovy.

Not a big deal, just trying things out :)

from pr2_object_manipulation.

pxlong avatar pxlong commented on July 28, 2024

Hi @dirk-thomas, have you already compiled this stack successfully?

If you still got the [error: no matching function for call to ‘bodies::Body::containsPoint(const tf::Vector3&)’], you can try to run "sudo apt-get remove ros-groovy-geometric-shapes", it will fix this problem. I have tried this : )

Hope that can help.

from pr2_object_manipulation.

pxlong avatar pxlong commented on July 28, 2024

Hi @mbforbes, @mateiciocarlie and @KaijenHsiao, I would like to help you catkin-ize and hydro-ize this stack.

I have already successfully built (rosmake) it today (Ubuntu 12.04, ROS Groovy, and git-cloned it this morning).

But I don't what to do next if I want to hydro-ize it, so if you can give me some guidance, I will try my best.

Thank you :)

from pr2_object_manipulation.

dirk-thomas avatar dirk-thomas commented on July 28, 2024

I only tried the build mentioned above and are not looking into this any further since it boiled down to simple compiler errors and not any dependency related problems.

from pr2_object_manipulation.

Related Issues (15)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.