Talk:Ros

From ArchWiki
Revision as of 18:58, 27 June 2013 by Benguin (Talk | contribs) (Groovy packages)

Jump to: navigation, search

Pallegro, here. Hoping we can pool resources.

Does anyone have any ideas for packaging on aur? Should we have ros-$distro-$package or ros-$distro-$variant or just ros-$variant (and track releases)?

Just had the need to install ROS again. I'm trying out mosenle's stacks on a chroot for cross compile and pushing the little fixes I'm needing to do to a fork of his github groovy stack. I'm not sure I'm a fan of such fine-grained packages but that's a small issue. Meanwhile it seems a shame to waste the hard work he has put in. Hauptmech (talk) 14:15, 15 January 2013 (UTC)

www.ros.org/wiki/groovy/Installation/Arch

  • python/python2: some scripts use #!/usr/bin/python rather than #!/usr/bin/env python, e.g. rosconsole/scripts/generate_macros.py . So we should do {{{for file in $(grep -rl 'bin/python *$' .); do sed -i 's/bin\/python *$/bin\/python2/' $file ;done}}}
  • genmsg.py buff.getvalue().strip().encode('utf-8') : I didn't encounter this. Any idea why this wouldn't be hitting ubuntu? I used catkin_make instead of cmake.
  • ros-base variant (not just ros_comm) builds find for me.
  • robot variant needed two small patches, one of which (collada_urdf) is fixed upstream:


--- collada_urdf/CMakeLists.txt 2013-01-10 12:14:26.551127084 -0400
+++ collada_urdf/CMakeLists.txt 2013-01-10 12:15:21.200339275 -0400
@@ -13,8 +13,8 @@ include_directories(include)
 find_package(Boost REQUIRED COMPONENTS system)
 include_directories(${Boost_INCLUDE_DIR})
 
-find_package(assimp QUIET)
-if ( NOT assimp_FOUND )
+find_package(ASSIMP QUIET)
+if ( NOT ASSIMP_FOUND )
   find_package(PkgConfig REQUIRED)
   pkg_check_modules(ASSIMP assimp)
 endif()

--- nodelet/CMakeLists.txt      2012-12-27 22:00:51.000000000 -0400
+++ nodelet/CMakeLists.txt      2013-01-09 16:22:23.001660738 -0400
 @@ -47,6 +47,7 @@ add_dependencies(nodeletlib ${PROJECT_NA
 add_executable(nodelet src/nodelet.cpp)
 target_link_libraries(nodelet ${BOOST_LIBRARIES}
                               ${catkin_LIBRARIES}
+                              uuid
                               nodeletlib
 )
  • pcl needed:
--- common/include/pcl/point_cloud.h
+++ common/include/pcl/point_cloud.h
@@ -649,7 +649,7 @@ namespace pcl
         width (pc.width), height (pc.height), is_dense (pc.is_dense)
       {
         // Copy the obvious
-        properties.acquisition_time   = pc.header.stamp;
+        properties.acquisition_time   = pc.header.stamp.sec;
         properties.sensor_origin      = pc.sensor_origin_;//.head<3> ();
         properties.sensor_orientation = pc.sensor_orientation_;

--- pcl/PCLConfig.cmake.in     2013-01-14 13:49:57.826710380 -0400
+++ pcl/PCLConfig.cmake.in     2013-01-14 13:53:49.900025755 -0400
@@ -266,7 +266,12 @@ macro(find_VTK)
   endif(PCL_ALL_IN_ONE_INSTALLER)
  find_package(VTK ${QUIET_})
  if (VTK_FOUND AND NOT ANDROID_NDK)
-    set(VTK_LIBRARIES vtkCommon vtkRendering vtkHybrid)
+    #set(VTK_LIBRARIES vtkCommon vtkRendering vtkHybrid)
+    unset(VTK_LIBRARIES)
+    foreach(lib "vtkCommon" "vtkRendering" "vtkHybrid")
+      find_library(VTK_${lib} ${lib} "${VTK_LIBRARY_DIRS}" VTK_DIR)
+      LIST(APPEND VTK_LIBRARIES "${VTK_${lib}}")
+    endforeach()
   endif(VTK_FOUND AND NOT ANDROID_NDK)
 endmacro(find_VTK)

Groovy packages

So I've been putting some work into creating a ros-groovy-desktop AUR package. It's not in a working state at the moment, but it compiles without error. The big issue that I'm running into is that the catkin make intall does not like installing to ${pkgdir} without coding all its paths as such (in env.sh and other such files). I'm trying to figure out the best approach to fixing this. Any suggestions? I can post my PKGBUILD if anyone wants it. Zootboy (talk) 19:30, 31 March 2013 (UTC)

Any updates on the packaging? If it's not working yet, I'd like to help. Can you post the PKGBUILD? Hanno (talk) 14:16, 17 April 2013 (UTC)
Here's what I have so far: http://mastermind.rh.rit.edu/ros-groovy-desktop-1.0.0-1.src.tar.gz (It may be in some weird state, I tend to comment out chunks of the build function to test it). The biggest issue I've hit is the fact that no matter what settings / directories I adjust in the catkin_make lines, it always ends up with hard-coded references to srcdir and pkgdir. See what you think... Zootboy (talk) 20:18, 17 April 2013 (UTC)
Update: I forked Hauptmech's repository and fixed up the packages. I'm working on posting them all to the AUR, and I updated the main Ros page with links to the packages. I've tried to follow the Ubuntu package naming scheme with the packages as much as possible. Disregard the above PKGBUILD -- it never worked right anyway, and it wasn't the right way to do it. The AUR packages should work much better. Zootboy (talk) 23:18, 24 May 2013 (UTC)
The build process fails with ros-groovy-console-bridge, complaining that "Remote branch release/groovy/console_bridge/0.1.4-1 not found". I edited the PKGBUILD file, and made it just get the "head" branch, which succeeds but then fails with ros-groovy-rosconsole-bridge complaining that console_bridge is not a catkin_package. Any pointers? benguin
Also, should the git repo point to git://github.com/ros-gbp/ or git://github.com/ros? I am a bit of a noob on Arch -- my ROS experience has been solely on Ubuntu. benguin(talk) 21:16, 26 June 2013 (UTC).Scratch that. Figured it out -- good as it is :). Thanks!benguin(talk) 18:58, 27 June 2013 (UTC).