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

Cmake files added #15

Merged

Conversation

JenniferBuehler
Copy link
Contributor

This pull request only adds the cmake files. No changes to original source included yet.

@JenniferBuehler
Copy link
Contributor Author

It may be a bit confusing that there is a commit which talks about the locale settings still. This is because I originally had it in there. But have removed it in this branch which I used for the PR. So this PR only adds the CMake files and doesn't change anything in the source.

@JenniferBuehler
Copy link
Contributor Author

Ah, and another note: The cmake files still use catkin (though no other ROS packages). At some stage the catkin dependencies should be made optional, so that the CMakeLists can be used without catkin as well. Put this on the TODO list.

@jvarley
Copy link
Member

jvarley commented Jan 14, 2016

Overall, looks pretty good. I will download and try it out this weekend. Some of my thoughts:

  1. I don't think this repo should have a package.xml, or any references to catkin/ros in the build including the commented out parts
  2. The relevant code for the CGDB should be included
  3. relevant code for PLY should be included
  4. graspit/test/simple_test.cpp should be included and built as an additional executable.
  5. has this been tested on windows and linux?

@JenniferBuehler
Copy link
Contributor Author

Sounds reasonable. I've updated the branch for my PR.

  1. I've left the package.xml in there for now. This has the advantage that the package can (but does not need to) be compiled as catkin package. This is very convenient to build for people who are using it with ROS. For people who aren't, the package.xml is just a superfluous file, which should not disturb too much. I commented this in the description of the package.xml. If you really think we should remove it, that's ok. Just thought I'd keep it in there until everybody has voted on this.
  2. CGDB is now included. I haven't tested related code because I don't know the code in this subject, so please give it a test run.
  3. PLY now included as well. Same as for 2)
  4. simple_test.cpp requires C++11. This has issues with compiling the other code. No major issues I think, but stuff that would need changing. I commented about this in the CMakeLists where add_executable for simple_test.cpp is commented out at the moment.
  5. I don't use Windows. It was tested on Ubuntu 14.04. If you could test it on Windows, that would be awesome!

Note about the new CMakeLists.txt: It can be used with or without catkin. It detects whether catkin is used to compile, and if it is, it uses catkin commands. Otherwise, it doesn't. I have successfully compiled and run the simulator using cmake only as well.

@JenniferBuehler
Copy link
Contributor Author

Side note: If including the graspit library compiled with cmake only from the install directories (e.g. from an external package), a few changes in the original source are required:

  • change #include "src/Collision..." occurrences wit just "#include Collision..." and
  • similarly, remvoing the "include/" from all #include "include/..."

The src/ and include/ directories should be added by the makefile. Such changes are only in the master branch of my fork so far. This commit still doesn't touch the sources.

@jvarley
Copy link
Member

jvarley commented Jan 29, 2016

So I am able to get this to build just fine when using cmake.

When I use catkin_make, I get:

CMake Error at /opt/ros/hydro/share/catkin/cmake/catkin_package.cmake:291 (message):
catkin_package() absolute include dir '/usr/include/qhull/qhull' does not
exist
Call Stack (most recent call first):
/opt/ros/hydro/share/catkin/cmake/catkin_package.cmake:98 (_catkin_package)
graspit/CMakeLists.txt:692 (catkin_package)

should this line in CMakeMacros/FindQhull.cmake:
set(QHULL_INCLUDE_DIRS "${QHULL_INCLUDE_DIR}/qhull;${QHULL_INCLUDE_DIR}")
be:
set(QHULL_INCLUDE_DIRS "${QHULL_INCLUDE_DIR}")

If I change the above, then it builds fine with cmake and catkin_make. I am on 12.04 not 14.04 on the machine I am currently testing this perhaps that accounts for the difference?

If I make this change, and then I build with catkin_make, It compiles just fine when it is alone.

If I have a graspit plugin in my workspace, then catkin_make fails. I have not been able to figure out exactly why yet. As a minimal example, I make a workspace with

  1. graspit
  2. graspit_msgs https://github.com/CURG/graspit_msgs.git
  3. graspit_moveit_plugin https://github.com/CURG/graspit_moveit_plugin.git

for the moveit plugin, I have to comment out everythin inside grasp_msg_publisher.cpp sendPickupRequest function this has to do with another PR.
#9

With this workspace, caktin_make fails with:

CMake Error at /home/jvarley/ros/temp_ws/build/graspit_msgs/cmake/graspit_msgs-genmsg.cmake:65 (add_custom_target):
add_custom_target cannot create target "graspit_msgs_generate_messages_cpp"
because another target with the same name already exists. The existing
target is a custom target created in source directory
"/home/jvarley/ros/temp_ws/src/graspit_moveit_plugin". See documentation
for policy CMP0002 for more details.
Call Stack (most recent call first):
/opt/ros/hydro/share/genmsg/cmake/genmsg-extras.cmake:299 (include)
graspit_msgs/CMakeLists.txt:66 (generate_messages)

CMake Error at /home/jvarley/ros/temp_ws/build/graspit_msgs/cmake/graspit_msgs-genmsg.cmake:124 (add_custom_target):
add_custom_target cannot create target
"graspit_msgs_generate_messages_lisp" because another target with the same
name already exists. The existing target is a custom target created in
source directory "/home/jvarley/ros/temp_ws/src/graspit_moveit_plugin".
See documentation for policy CMP0002 for more details.
Call Stack (most recent call first):
/opt/ros/hydro/share/genmsg/cmake/genmsg-extras.cmake:299 (include)
graspit_msgs/CMakeLists.txt:66 (generate_messages)

CMake Error at /home/jvarley/ros/temp_ws/build/graspit_msgs/cmake/graspit_msgs-genmsg.cmake:183 (add_custom_target):
add_custom_target cannot create target "graspit_msgs_generate_messages_py"
because another target with the same name already exists. The existing
target is a custom target created in source directory
"/home/jvarley/ros/temp_ws/src/graspit_moveit_plugin". See documentation
for policy CMP0002 for more details.
Call Stack (most recent call first):
/opt/ros/hydro/share/genmsg/cmake/genmsg-extras.cmake:299 (include)
graspit_msgs/CMakeLists.txt:66 (generate_messages)

-- Configuring incomplete, errors occurred!

But if I run it with the graspit-ros package rather than the graspit package, everything builds just fine. The graspit_moveit_plugin does not generate any messages or have the targets that the error message is saying it does. I know the error doesn't mention anything to do with the graspit package, but it is causing the problem. I am not sure what exactly is causing the problem.

@JenniferBuehler
Copy link
Contributor Author

Thanks for all the testing!

1) Qhull error

Yes the qhull error is most likely due to our different system configurations. The FindQHull.cmake is a copy of the PCL FindQhull.cmake (if I remember correctly)..

On my system it won't compile without the ${QHULL_INCLUDE_DIR}/qhull. This is because I have libqhull on my system... maybe you only have qhull? It ends up choosing libqhull directory instead of qhull, because that seems to be prioritized. If I don't add qhull to the include dir, it won't work, because qhull_a.h is not in libqhull.

To fix this, I removed the addition of qhull directory, so it'll compile on yours, and added a separate search for qhull_a.h so it'll compile on mine as well. I've updated the PR. Can you please try if this works fine on yours now?

2) Message generation error

I can't compile graspit_moveit_plugin with my fork of graspit:

Building CXX object graspit_moveit_plugin/CMakeFiles/ros_graspit_interface.dir/src/grasp_msg_publisher.cpp.o
/home/jenny/catkin_ws/src/graspit_moveit_plugin/src/planning_scene_msg_builder.cpp:3:42: fatal error: graspit_source/include/world.h: No such file or directory
 #include "graspit_source/include/world.h"
                                          ^
compilation terminated.
/home/jenny/catkin_ws/src/graspit_moveit_plugin/src/grasp_msg_publisher.cpp:4:47: fatal error: graspit_source/include/graspitGUI.h: No such file or directory
 #include "graspit_source/include/graspitGUI.h"
                                               ^
compilation terminated.

                                          ^

Because of the graspit_source reference I assume either the CURG graspit-ros or the graspit-simulator/graspit-ros are required to compile with cmake. So I've tried that, instead of using my fork. Unfortunately, neither of the graspit-ros packages work for me out-of-the box.

With CURG/graspit-ros:

In file included from /home/jenny/catkin_ws/src/graspit_moveit_plugin/src/main.cpp:1:0:
/home/jenny/catkin_ws/src/graspit_moveit_plugin/include/ros_graspit_interface.h:43:28: fatal error: include/plugin.h: No such file or directory
 #include <include/plugin.h>
                            ^
compilation terminated.

There are more errors if I fix the individual issues, so I tried

graspit-simulator/graspit-ros:

In file included from /home/jenny/catkin_ws/src/graspit_moveit_plugin/src/grasp_msg_publisher.cpp:8:0:
/home/jenny/catkin_ws/src/graspit-ros/graspit/./graspit_source/include/EGPlanner/searchState.h:34:22: fatal error: matvec3D.h: No such file or directory
 #include "matvec3D.h"
                      ^
compilation terminated.
In file included from /home/jenny/catkin_ws/src/graspit_moveit_plugin/src/planning_scene_msg_builder.cpp:3:0:
/home/jenny/catkin_ws/src/graspit-ros/graspit/./graspit_source/include/world.h:197:1: error: ‘signals’ does not name a type
 signals:
 ^
/home/jenny/catkin_ws/src/graspit-ros/graspit/./graspit_source/include/world.h: In member function ‘void World::tendonChange()’:
/home/jenny/catkin_ws/src/graspit-ros/graspit/./graspit_source/include/world.h:290:23: error: ‘emit’ was not declared in this scope
   void tendonChange(){emit tendonDetailsChanged();}
                       ^
/home/jenny/catkin_ws/src/graspit-ros/graspit/./graspit_source/include/world.h:290:28: error: expected ‘;’ before ‘tendonDetailsChanged’
   void tendonChange(){emit tendonDetailsChanged();}

< and so on>

I could fix the issues, but thought there's little point if I don't know which of the two packages you have been using, or if you have the graspit_source elsewhere in your system.

Please send me the details of your set-up so I can try to reproduce the error.

Anyway, two first thoughts:

  • If on my system any graspit-ros is required (given it didn't have errors) to
    build graspit_moveit_plugin in the first place, but you can compile with my graspit fork instead of graspit-ros, then maybe you have other graspit sources on your system somewhere which graspit_moveit_plugin is using? Because it's not possible to compile both graspit-ros and my graspit fork (they are both called "graspit"). Is this intended?
  • The error message suggests that it's a conflict between graspit_msgs message generation and graspit_moveit_plugin. My cmake file does not do anything with graspit_msgs (I didn't have the package up until now). It also doesn't draw in any dependencies which require either graspit_msgs or graspit_moveit_plugin...

As a first try I would edit line 155 in graspit_moveit_plugin/CMakeLists.txt and change it from

add_dependencies(ros_graspit_interface graspit ${QT_DEFINITIONS})

to

add_dependencies(ros_graspit_interface graspit ${QT_DEFINITIONS} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})

I'm not sure this will make a difference at all but it's worth a shot. I've had message generation errors in the past which were often related to the exported targets (or lack of them).

@JenniferBuehler
Copy link
Contributor Author

P.S.: You could also try to comment out line 677 in my CMakeLists.txt:

set (${PROJECT_NAME}_EXPORTED_TARGETS ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})

This line is not really needed to compile all my packages, I just added it for completeness so the cmake file can be used with or without catkin. Not sure if it does anything at all, because I'm not using add_dependencies() anywhere. But maybe the *_EXPORTED_TARGETS variables are used by the catkin build system internally...

@@ -0,0 +1,28 @@
<?xml version="1.0"?>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@JenniferBuehler
Copy link
Contributor Author

Ok I tried it again as now I'm testing on Indigo anyway. Here I could reproduce your error.
Turns out it was something very simple:
graspit_moveit_plugin/package.xml was still missing the
<build_depend>graspit_msgs</build_depend>

It makes total sense because graspit_msgs was not processed before graspit_moveit_plugin in the cmake pipeline.

I also realized I had gotten something wrong in your last post, sorry about that: about you maybe having the graspit_source somewhere else. That's not needed of course if you have a working graspit-ros in your catkin_ws, and you compiled my graspit fork only with cmake or with no graspit_moveit_plugin in the catkin_ws... ouups. It must have been late ;)

Anyway, now it's starting to compile but I obviously get the same error like before from graspit_moveit_plugin because of the missing graspit_source. Only first line:

/home/jenny/catkin_ws/src/graspit_moveit_plugin/src/planning_scene_msg_builder.cpp:3:42: fatal error: graspit_source/include/world.h: No such file or directory #include "graspit_source/include/world.h"

That's no surprise. I guess the #include directives would have to be changed in graspit_moveit_plugin, which would make sense anyway (i.e. take out all "graspit_source/" and "include/" from the includes and instead add required paths in the CMakeLists.txt)

SET( QT_USE_QT3SUPPORT TRUE )
find_package(Qt4 COMPONENTS QtCore REQUIRED)

# include QT_USE_FILE is needed.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove comment

@jvarley
Copy link
Member

jvarley commented Feb 5, 2016

can we add to the commit to remove all the .pro files.

@jvarley
Copy link
Member

jvarley commented Feb 5, 2016

Hi Jennifer,
you said:
That's no surprise. I guess the #include directives would have to be changed in graspit_moveit_plugin, which would make sense anyway (i.e. take out all "graspit_source/" and "include/" from the includes and instead add required paths in the CMakeLists.txt)

What did you add to the CMakeLists.txt for this?

Thanks,
Jake

@JenniferBuehler
Copy link
Contributor Author

Hi Jake,

I edited CMakeLists.txt as you suggested, all makes sense. Can you check again if I got it right please?

To your question: I tried to compile graspit_moveit_plugin, but only got so far. Did the following changes
in graspit_moveit_plugin:

  • grasp_msg_publisher.cpp:
    removed "graspit_source/include" and changed to:

    #include <graspit_msgs/Grasp.h>
    #include <graspitGUI.h>
    #include <world.h>
    #include <body.h>
    #include <robot.h>
    #include <EGPlanner/searchState.h>
    
  • planning_scene_msg_builder.cpp:
    removed "graspit_source/include" and "include/" and changed to:

    #include <planning_scene_msg_builder.h>
    
    #include <world.h>
    #include <graspitGUI.h>
    #include <body.h>
    #include <triangle.h>
    
  • CMakeLists.txt:
    added "include" directory as well:

    include_directories(
        include
        ${catkin_INCLUDE_DIRS}
        ${QT_INCLUDES})
    

But then I get stuck on indigo, I'll look into this, unless you already have some ideas?

Building CXX object graspit_moveit_plugin/CMakeFiles/ros_graspit_interface.dir/src/grasp_msg_publisher.cpp.o
In file included from /opt/ros/indigo/include/pluginlib/class_loader.h:301:0,
                 from /opt/ros/indigo/include/moveit/occupancy_map_monitor/occupancy_map_monitor.h:44,
                 from /opt/ros/indigo/include/moveit/planning_scene_monitor/planning_scene_monitor.h:46,
                 from /home/jenny/catkin_ws/src/graspit_moveit_plugin/include/planning_scene_msg_builder.h:7,
                 from /home/jenny/catkin_ws/src/graspit_moveit_plugin/src/planning_scene_msg_builder.cpp:1:
/opt/ros/indigo/include/pluginlib/class_loader_imp.h: In member function ‘std::string pluginlib::ClassLoader<T>::extractPackageNameFromPackageXML(const string&)’:
/opt/ros/indigo/include/pluginlib/class_loader_imp.h:210:41: error: no matching function for call to ‘TiXmlDocument::LoadFile(const string&)’
       document.LoadFile(package_xml_path);
                                         ^
/opt/ros/indigo/include/pluginlib/class_loader_imp.h:210:41: note: candidates are:
In file included from /opt/ros/indigo/include/srdfdom/model.h:45:0,
                 from /opt/ros/indigo/include/moveit/robot_model/robot_model.h:45,
                 from /opt/ros/indigo/include/moveit/robot_state/robot_state.h:41,
                 from /opt/ros/indigo/include/moveit/planning_scene_interface/planning_scene_interface.h:40,
                 from /home/jenny/catkin_ws/src/graspit_moveit_plugin/include/planning_scene_msg_builder.h:6,
                 from /home/jenny/catkin_ws/src/graspit_moveit_plugin/src/planning_scene_msg_builder.cpp:1:
/home/jenny/catkin_ws/src/graspit/tinyxml/tinyxml.h:1408:7: note: bool TiXmlDocument::LoadFile(TiXmlEncoding)
  bool LoadFile( TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING );
       ^
/home/jenny/catkin_ws/src/graspit/tinyxml/tinyxml.h:1408:7: note:   no known conversion for argument 1 from ‘const string {aka const std::basic_string<char>}’ to ‘TiXmlEncoding’
/home/jenny/catkin_ws/src/graspit/tinyxml/tinyxml.h:1412:7: note: bool TiXmlDocument::LoadFile(const char*, TiXmlEncoding)
  bool LoadFile( const char * filename, TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING );
       ^
/home/jenny/catkin_ws/src/graspit/tinyxml/tinyxml.h:1412:7: note:   no known conversion for argument 1 from ‘const string {aka const std::basic_string<char>}’ to ‘const char*’
/home/jenny/catkin_ws/src/graspit/tinyxml/tinyxml.h:1420:7: note: bool TiXmlDocument::LoadFile(FILE*, TiXmlEncoding)
  bool LoadFile( FILE*, TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING );
       ^
/home/jenny/catkin_ws/src/graspit/tinyxml/tinyxml.h:1420:7: note:   no known conversion for argument 1 from ‘const string {aka const std::basic_string<char>}’ to ‘FILE* {aka _IO_FILE*}’

There seems to be an issue with the MoveIt! headers on indigo (included by planning_scene_msg_builder.h:7), not sure if I'm overlooking something here. I've just started to look into it now but have something else I need to do in the next hour or two...

@jvarley
Copy link
Member

jvarley commented Feb 6, 2016

Graspit has tiny xml included in it, which I would assume is an older version than the one used by Moveit.

Jennifer Buehler and others added 4 commits February 6, 2016 20:21
@jvarley
Copy link
Member

jvarley commented Feb 6, 2016

@JenniferBuehler
I made several PRs to your branch to fix the tinyxml issue, allow tests to build correctly, and fix some indentations. Let me know if you see any problems with them.

@JenniferBuehler
Copy link
Contributor Author

JenniferBuehler commented May 8, 2016

One thing I forgot to say about the (*) side note posted above.
In case you wonder whether it may have been related to missing libraries: I tested that. I broke it down to a simple test.cpp (with one test call to dlclose) linking explicitly to the existing libdl.so.a. It still had undefined references, when compiled with the said "Qt-compatible" g++.exe. However when compiled with other mingw/msys g++.exe's, it wasn't even required to specify -ldl --- it compiled fine without.
I tried a lot of things, but then finally worked around this issue by using the windows dynamic library loaders. This is, by the way, the same way which bullet does it.
I think it's definitely good to keep it compatible with the mingw build which is "officially" tested with Qt.

@jvarley
Copy link
Member

jvarley commented May 9, 2016

I think a good plugin to look at is the openclose plugin inside graspit as it includes a good number of GraspIt! headers. It currently does not work with the cmake graspit version. I made a PR to this branch with plugin fixes for the demo plugins that come with graspit. The only change that I don't really like is how I fixed the .pro file to allow the plugin to find the ui_* headers, but I am not sure of a better way to do this. I think it will be helpful to write a findGraspit.cmake sometime soon.

If you want to run the plugin
cd graspit
export GRASPIT=$PWD
cd graspit/plugins/openclose
qmake openClosePlugin.pro
make -j5
cd graspit/plugins/openclose/lib
export GRASPIT_PLUGIN_DIR=$PWD
cd graspit
./build/graspit_simulator -p libopenClosePlugin

@JenniferBuehler
Copy link
Contributor Author

Thanks for checking this. I will test it as soon as I can.
Was it working with the cmake version before the changes I made for Windows?

@jvarley
Copy link
Member

jvarley commented May 9, 2016

@JenniferBuehler

I have never done anything with the PQP_COLLISION flag. My understanding of it is that Graspit can use either PQP for collision detection, or graspit's own collision detection. Except for when Bullet is in use, and dynamics are running, then it uses bullet's collision detection.

@jvarley
Copy link
Member

jvarley commented May 9, 2016

I never tried the plugins prior to the windows changes.

@JenniferBuehler
Copy link
Contributor Author

Ok, thanks. I hope to get the time to look at it one of the next days.
Out of curiosity: Is it seg-faulting, or printing an error?

So to confirm with @mateiciocarlie, we could use the following DYNAMICS_ENGINE flags and put it all under one hood:

  • GRASPIT_DYNAMICS (using graspit dynamics and collision detection)
  • GRASPIT_DYNAMICS_PQP (using graspit dynamics and PQP collision detection)
  • BULLET_DYNAMICS (using bullet dynamics and bullet collision detection)

Or am I missing anything? Is it possible to use no dynamics, but still use bullet, but with PQP collision detection instead of bullet collision detection?

@jvarley
Copy link
Member

jvarley commented May 9, 2016

I think you got it. I cannot currently use bullet without dynamics. What is it printing?

@JenniferBuehler
Copy link
Contributor Author

I haven't tried it yet, just working on something else. What I was asking is what you mean with plugins not currently working with the cmake version. What is going wrong: Segfault? Error?

@mateiciocarlie
Copy link
Member

The choice of dynamics and the choice of collision engine should be independent, even though some dynamics engines will actually provide both. Also, one can choose to use a different collision engine and just never use the dynamics engine at all - a lot of GraspIt's usefulness actually comes from the static simulations.

So perhaps we can have two independent flags, e.g. DYNAMICS_ENGINE and COLLISION_ENGINE?

@JenniferBuehler
Copy link
Contributor Author

Sounds reasonable, so confirming:

DYNAMICS_ENGINE:

  • GRASPIT_DYNAMICS
  • BULLET_DYNAMICS

COLLISION_ENGINE

  • GRASPIT_COLLISION
  • BULLET_COLLISION

Choosing GRASPIT_DYNAMICS and BULLET_COLLISION, and probably other combinations, would be invalid though? So checking for inconsistencies may get a little convoluted, but that's not avoidable if making 2 variables of it...

@jvarley
Copy link
Member

jvarley commented May 9, 2016

It didn't compile unless I made the changes from the PR I sent you. With the PR, it runs fine.

@mateiciocarlie
Copy link
Member

Agreed! COLLISION_ENGINE should also get the PQP_COLLISION option though.

@JenniferBuehler
Copy link
Contributor Author

Oh, of course, forgot PQP_COLLISION. So no error checking in cmakelists.txt?

@jvarley: Ok so the plugin does work with the new windows changes, after your PR?

@jvarley
Copy link
Member

jvarley commented May 9, 2016

yes

@JenniferBuehler
Copy link
Contributor Author

YAY!!!

@jvarley
Copy link
Member

jvarley commented May 9, 2016

lol, I know right. Thanks for checking out windows, that would have taken me forever.

@JenniferBuehler
Copy link
Contributor Author

It did take me forever too. Compiling on Windows is a nightmare. Always you think you're almost there, and then... you aren't. I hope to not see Windows for a long, long while after this is done ;)

@JenniferBuehler
Copy link
Contributor Author

@jvarley You can use this Findgraspit.cmake to start with, it can probably be improved.

@jvarley
Copy link
Member

jvarley commented May 9, 2016

I will checkout the Findgraspit.cmake.

I just made a pr for graspit-ros:
graspit-simulator/graspit-ros#6

This switches it over to work with graspit built from cmake. It still has graspit as a submodule, I don't know if we want to keep it that way, or switch over to using a Findgraspit.cmake similar to gazebo, pcl etc.

I am still having a small problem, where it places graspit in build rather than devel, I am trying to fix it at the moment, let me know if you guys know how.

Once this is fixed, I think we are ready to pull in everything.

@jvarley
Copy link
Member

jvarley commented May 9, 2016

@mateiciocarlie @JenniferBuehler

I think we are ready to pull in both this PR, and
graspit-simulator/graspit-ros#6
Then we can up the submodule for graspit-ros to point at this version of GraspIt!.

Best of my knowledge, we currently work

  • with/without bullet
  • windows/linux
  • with non ros plugins
  • with ros plugins and new version of graspit-ros

Any concerns?

-Jake

@JenniferBuehler
Copy link
Contributor Author

JenniferBuehler commented May 9, 2016

@jvarley if you build graspit with cmake (not with catkin), it will always put it in the build folder by default. It is catkin which changes the install destination to the devel directory. You could maybe try setting CMAKE_INSTALL_PREFIX manually? Are you trying to compile graspit from within the catkin workspace (eg. pulling it in as external cmake source)?

@jvarley
Copy link
Member

jvarley commented May 9, 2016

I fixed it, I just need to move the catkin_package linie above the add_subdirectory line in the graspit-ros cmakelist.txt

@jvarley
Copy link
Member

jvarley commented May 9, 2016

Currently graspit is a submodule to graspit-ros. I think at some point I would prefer to make it an external cmake source, but I need to talk to Matei about that, and I think it can be left for another day. At the moment, I think we are good to go.

@mateiciocarlie mateiciocarlie merged commit 50ec2ed into graspit-simulator:master May 12, 2016
@mateiciocarlie
Copy link
Member

Hooray! Merged.

Thanks for all the contributions here - it was s big one!

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

Successfully merging this pull request may close these issues.

None yet

3 participants