0
$\begingroup$

Rosanswers logo

Hello.

I need to use a modified version of the prosilica camera driver in Ros Hydro. I have followed the tutorials and I have set up an overlaying catkin workspace with rosbuild. Everything seems fine, but when I try to build the package, all I get is a lot of messages saying the packages are marked with a ROS_NOBUILD flag and I cannot wonder why.

The output of rosmake is:

    [ rosmake ] rosmake starting...                                                                                               
[ rosmake ] No package specified.  Building ['prosilica_camera']                                                              
[ rosmake ] Packages requested are: ['prosilica_camera']                                                                      
[ rosmake ] Logging to directory /home/marbosjo/.ros/rosmake/rosmake_output-20131025-104949                                   
[ rosmake ] Expanded args ['prosilica_camera'] to:
['prosilica_camera']                                                       
[rosmake-0] Starting >>> catkin [ make ]                                                                                      
[rosmake-0] Finished <<< catkin ROS_NOBUILD in package catkin
 No Makefile in package catkin                                  
[rosmake-0] Starting >>> genmsg [ make ]                                                                                      
[rosmake-1] Starting >>> cpp_common [ make ]                                                                                  
[rosmake-5] Starting >>> rosgraph [ make ]                                                                                    
[rosmake-6] Starting >>> rospack [ make ]                                                                                     
[rosmake-2] Starting >>> rosclean [ make ]                                                                                    
[rosmake-0] Finished <<< genmsg ROS_NOBUILD in package genmsg
 No Makefile in package genmsg                                  
[rosmake-3] Starting >>> console_bridge [ make ]                                                                              
[rosmake-4] Starting >>> prosilica_gige_sdk [ make ]                                                                          
[rosmake-0] Starting >>> genlisp [ make ]                                                                                     
[rosmake-1] Finished <<< cpp_common ROS_NOBUILD in package cpp_common
 No Makefile in package cpp_common                      
[rosmake-1] Starting >>> genpy [ make ]                                                                                       
[rosmake-7] Starting >>> gencpp [ make ]                                                                                      
[rosmake-5] Finished <<< rosgraph ROS_NOBUILD in package rosgraph
 No Makefile in package rosgraph                            
[rosmake-5] Starting >>> rostime [ make ]                                                                                     
[rosmake-3] Finished <<< console_bridge ROS_NOBUILD in package console_bridge
 No Makefile in package console_bridge          
[rosmake-4] Finished <<< prosilica_gige_sdk ROS_NOBUILD in package prosilica_gige_sdk
 No Makefile in package prosilica_gige_sdk
[rosmake-2] Finished <<< rosclean ROS_NOBUILD in package rosclean
 No Makefile in package rosclean                            
[rosmake-4] Starting >>> rosparam [ make ]                                                                                    
[rosmake-0] Finished <<< genlisp ROS_NOBUILD in package genlisp
 No Makefile in package genlisp                               
[rosmake-6] Finished <<< rospack ROS_NOBUILD in package rospack
 No Makefile in package rospack                               
[rosmake-3] Starting >>> rosmaster [ make ]                                                                                   
[rosmake-2] Starting >>> roslang [ make ]                                                                                     
[rosmake-0] Starting >>> roslib [ make ]                                                                                      
[rosmake-7] Finished <<< gencpp ROS_NOBUILD in package gencpp
 No Makefile in package gencpp                                  
[rosmake-6] Starting >>> xmlrpcpp [ make ]                                                                                    
[rosmake-1] Finished <<< genpy ROS_NOBUILD in package genpy
 No Makefile in package genpy                                     
[rosmake-7] Starting >>> class_loader [ make ]                                                                                
[rosmake-1] Starting >>> message_generation [ make ]                                                                          
[rosmake-5] Finished <<< rostime ROS_NOBUILD in package rostime
 No Makefile in package rostime                               
[rosmake-4] Finished <<< rosparam ROS_NOBUILD in package rosparam rosmaster: 0.0 sec ] [ roslan... [ 8 Active 11/48 Complete ]
 No Makefile in package rosparam                            
[rosmake-5] Starting >>> roscpp_traits [ make ]                                                                               
[rosmake-3] Finished <<< rosmaster ROS_NOBUILD in package rosmaster
 No Makefile in package rosmaster                         
[rosmake-2] Finished <<< roslang ROS_NOBUILD in package roslang
 No Makefile in package roslang                               
[rosmake-0] Finished <<< roslib ROS_NOBUILD in package roslib
 No Makefile in package roslib                                  
[rosmake-0] Starting >>> rosunit [ make ]                                                                                     
[rosmake-1] Finished <<< message_generation ROS_NOBUILD in package message_generation
 No Makefile in package message_generation
[rosmake-7] Finished <<< class_loader ROS_NOBUILD in package class_loader
 No Makefile in package class_loader                
[rosmake-5] Finished <<< roscpp_traits ROS_NOBUILD in package roscpp_traits
 No Makefile in package roscpp_traits             
[rosmake-6] Finished <<< xmlrpcpp ROS_NOBUILD in package xmlrpcpp
 No Makefile in package xmlrpcpp                            
[rosmake-2] Starting >>> roscpp_serialization [ make ]                                                                        
[rosmake-0] Finished <<< rosunit ROS_NOBUILD in package rosunit
 No Makefile in package rosunit                               
[rosmake-0] Starting >>> rosconsole [ make ]                                                                                  
[rosmake-2] Finished <<< roscpp_serialization ROS_NOBUILD in package roscpp_serialization
 No Makefile in package roscpp_serialization
[rosmake-2] Starting >>> message_runtime [ make ]                                                                             
[rosmake-0] Finished <<< rosconsole ROS_NOBUILD in package rosconsole
 No Makefile in package rosconsole                      
[rosmake-0] Starting >>> pluginlib [ make ]                                                                                   
[rosmake-2] Finished <<< message_runtime ROS_NOBUILD in package message_runtime
 No Makefile in package message_runtime       
[rosmake-2] Starting >>> std_msgs [ make ]                                                                                    
[rosmake-0] Finished <<< pluginlib ROS_NOBUILD in package pluginlib
 No Makefile in package pluginlib                         
[rosmake-2] Finished <<< std_msgs ROS_NOBUILD in package std_msgs
 No Makefile in package std_msgs                            
[rosmake-2] Starting >>> rosgraph_msgs [ make ]                                                                               
[rosmake-7] Starting >>> geometry_msgs [ make ]                                                                               
[rosmake-6] Starting >>> diagnostic_msgs [ make ]                                                                             
[rosmake-2] Finished <<< rosgraph_msgs ROS_NOBUILD in package rosgraph_msgs
 No Makefile in package rosgraph_msgs             
[rosmake-2] Starting >>> roscpp [ make ]                                                                                      
[rosmake-1] Starting >>> rospy [ make ]                                                                                       
[rosmake-7] Finished <<< geometry_msgs ROS_NOBUILD in package geometry_msgs
 No Makefile in package geometry_msgs             
[rosmake-6] Finished <<< diagnostic_msgs ROS_NOBUILD in package diagnostic_msgs
 No Makefile in package diagnostic_msgs       
[rosmake-7] Starting >>> sensor_msgs [ make ]                                                                                 
[rosmake-2] Finished <<< roscpp ROS_NOBUILD in package roscpp
 No Makefile in package roscpp                                  
[rosmake-2] Starting >>> rosout [ make ]                                                                                      
[rosmake-1] Finished <<< rospy ROS_NOBUILD in package rospy
 No Makefile in package rospy                                     
[rosmake-7] Finished <<< sensor_msgs ROS_NOBUILD in package sensor_msgs
 No Makefile in package sensor_msgs                   
[rosmake-7] Starting >>> camera_calibration_parsers [ make ]                                                                  
[rosmake-2] Finished <<< rosout ROS_NOBUILD in package rosout
 No Makefile in package rosout                                  
[rosmake-2] Starting >>> roslaunch [ make ]                                                                                   
[rosmake-7] Finished <<< camera_calibration_parsers ROS_NOBUILD in package camera_calibration_parsers
 No Makefile in package camera_calibration_parsers
[rosmake-2] Finished <<< roslaunch ROS_NOBUILD in package roslaunch
 No Makefile in package roslaunch                         
[rosmake-2] Starting >>> rostest [ make ]                                                                                     
[rosmake-2] Finished <<< rostest ROS_NOBUILD in package rostest
 No Makefile in package rostest                               
[rosmake-2] Starting >>> diagnostic_updater [ make ]                                                                          
[rosmake-7] Starting >>> topic_tools [ make ]                                                                                 
[rosmake-0] Starting >>> message_filters [ make ]                                                                             
[rosmake-2] Finished <<< diagnostic_updater ROS_NOBUILD in package diagnostic_updater
 No Makefile in package diagnostic_updater
[rosmake-0] Finished <<< message_filters ROS_NOBUILD in package message_filters
 No Makefile in package message_filters       
[rosmake-5] Starting >>> self_test [ make ]                                                                                   
[rosmake-7] Finished <<< topic_tools ROS_NOBUILD in package topic_tools
 No Makefile in package topic_tools                   
[rosmake-5] Finished <<< self_test ROS_NOBUILD in package self_test
 No Makefile in package self_test                         
[rosmake-0] Starting >>> rosbag [ make ]                                                                                      
[rosmake-6] Starting >>> image_transport [ make ]                                                                             
[rosmake-6] Finished <<< image_transport ROS_NOBUILD in package image_transport
 No Makefile in package image_transport       
[rosmake-0] Finished <<< rosbag ROS_NOBUILD in package rosbag
 No Makefile in package rosbag                                  
[rosmake-0] Starting >>> rosmsg [ make ]                                                                                      
[rosmake-6] Starting >>> polled_camera [ make ]                                                                               
[rosmake-6] Finished <<< polled_camera ROS_NOBUILD in package polled_camera
 No Makefile in package polled_camera             
[rosmake-0] Finished <<< rosmsg ROS_NOBUILD in package rosmsg
 No Makefile in package rosmsg                                  
[rosmake-0] Starting >>> rosservice [ make ]                                                                                  
[rosmake-0] Finished <<< rosservice ROS_NOBUILD in package rosservice
 No Makefile in package rosservice                      
[rosmake-0] Starting >>> dynamic_reconfigure [ make ]                                                                         
[rosmake-0] Finished <<< dynamic_reconfigure ROS_NOBUILD in package dynamic_reconfigure
 No Makefile in package dynamic_reconfigure
[rosmake-0] Starting >>> driver_base [ make ]                                                                                 
[rosmake-0] Finished <<< driver_base ROS_NOBUILD in package driver_base
 No Makefile in package driver_base                   
[rosmake-0] Starting >>> prosilica_camera [ make ]                                                                            
[rosmake-0] Finished <<< prosilica_camera ROS_NOBUILD in package prosilica_camera                                             
[ rosmake ] Results:                                                                                                          
[ rosmake ] Built 48 packages with 0 failures.                                                                                
[ rosmake ] Summary output to directory                                                                                       
[ rosmake ] /home/marbosjo/.ros/rosmake/rosmake_output-20131025-104949

Finally I have managed to build the package with make and adding a Makefile with the following line:

include $(shell rospack find mk)/cmake.mk

But I cannot install it, or use it from the location of the workspace, so I have to manually copy the files in the ROS_ROOT.

Any idea about how to build it with rosmake? Any idea about how to install o use the package compiled with make, without manually moving the files to ROS_ROOT?


Originally posted by marbosjo on ROS Answers with karma: 16 on 2013-10-24

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

rosmake only builds rosbuild packages, not catkin packages. You should not invoke rosmake in folders with catkin packages, as that will only give you the ROS_NOBUILD messages.

And rosbuild packages cannot easily be installed, that's one of the reasons for the switch to catkin. Rosbuild packages are more intended to be used without being installed.


Originally posted by KruseT with karma: 7848 on 2013-10-24

This answer was ACCEPTED on the original site

Post score: 1


Original comments

Comment by marbosjo on 2013-10-25:
So what is the best way to overlay a rosbuild package in hydro?

I followed this tutorial (http://wiki.ros.org/catkin/Tutorials/using_rosbuild_with_catkin) but I get stucked in the errors I have mentioned.

Comment by KruseT on 2013-10-25:
The tutorial explain everything. Put rosbuild_ws next to catkin_ws, not one inside the other. Run rosmake only within rosbuild_ws. Do not install rosbuild packages, just use rosbuild_ws/setup.sh to run overlayed code. Do not move files to ROS_ROOT.

Comment by marbosjo on 2013-10-25:
Finally I have managed to build the package by switching to the branch "master" of the git repository.

Thank you!

$\endgroup$

Your Answer

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