Universal_Robots_ROS_Driver
Universal_Robots_ROS_Driver copied to clipboard
catkin_make failed!
Summary
I was building UR kit following the instructions in README, however, I have encountered a problem when performing catkin_make. The complete console message is too long, so I just put the tail of it here:
[ 98%] Building CXX object Universal_Robots_ROS_Driver/ur_calibration/CMakeFiles/calibration_correction.dir/src/calibration_correction.cpp.o
In file included from /usr/local/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
from /usr/local/include/boost/smart_ptr/detail/yield_k.hpp:23,
from /usr/local/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
from /usr/local/include/boost/smart_ptr/detail/spinlock.hpp:42,
from /usr/local/include/boost/smart_ptr/detail/spinlock_pool.hpp:25,
from /usr/local/include/boost/smart_ptr/shared_ptr.hpp:29,
from /usr/local/include/boost/shared_ptr.hpp:17,
from /opt/ros/noetic/include/ros/forwards.h:37,
from /opt/ros/noetic/include/ros/common.h:37,
from /opt/ros/noetic/include/ros/ros.h:43,
from /home/wxy/catkin_ws/src/Universal_Robots_ROS_Driver/ur_calibration/include/ur_calibration/calibration.h:32,
from /home/wxy/catkin_ws/src/Universal_Robots_ROS_Driver/ur_calibration/src/calibration.cpp:29:
/usr/local/include/boost/bind.hpp:36:1: note: #pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.
36 | BOOST_PRAGMA_MESSAGE(
| ^~~~~~~~~~~~~~~~~~~~
In file included from /usr/local/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
from /usr/local/include/boost/smart_ptr/detail/yield_k.hpp:23,
from /usr/local/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
from /usr/local/include/boost/smart_ptr/detail/spinlock.hpp:42,
from /usr/local/include/boost/smart_ptr/detail/spinlock_pool.hpp:25,
from /usr/local/include/boost/smart_ptr/shared_ptr.hpp:29,
from /usr/local/include/boost/shared_ptr.hpp:17,
from /opt/ros/noetic/include/ros/forwards.h:37,
from /opt/ros/noetic/include/ros/common.h:37,
from /opt/ros/noetic/include/ros/ros.h:43,
from /home/wxy/catkin_ws/src/Universal_Robots_ROS_Driver/ur_calibration/include/ur_calibration/calibration.h:32,
from /home/wxy/catkin_ws/src/Universal_Robots_ROS_Driver/ur_calibration/include/ur_calibration/calibration_consumer.h:35,
from /home/wxy/catkin_ws/src/Universal_Robots_ROS_Driver/ur_calibration/src/calibration_consumer.cpp:29:
/usr/local/include/boost/bind.hpp:36:1: note: #pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.
36 | BOOST_PRAGMA_MESSAGE(
| ^~~~~~~~~~~~~~~~~~~~
In file included from /usr/local/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
from /usr/local/include/boost/smart_ptr/detail/yield_k.hpp:23,
from /usr/local/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
from /usr/local/include/boost/smart_ptr/detail/spinlock.hpp:42,
from /usr/local/include/boost/smart_ptr/detail/spinlock_pool.hpp:25,
from /usr/local/include/boost/smart_ptr/shared_ptr.hpp:29,
from /usr/local/include/boost/shared_ptr.hpp:17,
from /opt/ros/noetic/include/ros/forwards.h:37,
from /opt/ros/noetic/include/ros/common.h:37,
from /opt/ros/noetic/include/ros/ros.h:43,
from /home/wxy/catkin_ws/src/Universal_Robots_ROS_Driver/ur_calibration/include/ur_calibration/calibration.h:32,
from /home/wxy/catkin_ws/src/Universal_Robots_ROS_Driver/ur_calibration/include/ur_calibration/calibration_consumer.h:35,
from /home/wxy/catkin_ws/src/Universal_Robots_ROS_Driver/ur_calibration/src/calibration_correction.cpp:29:
/usr/local/include/boost/bind.hpp:36:1: note: #pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.
36 | BOOST_PRAGMA_MESSAGE(
| ^~~~~~~~~~~~~~~~~~~~
/home/wxy/catkin_ws/src/Universal_Robots_ROS_Driver/ur_calibration/src/calibration_correction.cpp: In member function ‘bool CalibrationCorrection::writeCalibrationData()’:
/home/wxy/catkin_ws/src/Universal_Robots_ROS_Driver/ur_calibration/src/calibration_correction.cpp:111:54: warning: ‘boost::filesystem::path boost::filesystem::complete(const boost::filesystem::path&)’ is deprecated: Use absolute() instead [-Wdeprecated-declarations]
111 | fs::path out_path = fs::complete(output_filename_);
| ^
In file included from /usr/local/include/boost/filesystem.hpp:19,
from /home/wxy/catkin_ws/src/Universal_Robots_ROS_Driver/ur_calibration/src/calibration_correction.cpp:44:
/usr/local/include/boost/filesystem/operations.hpp:353:13: note: declared here
353 | inline path complete(path const& p)
| ^~~~~~~~
/home/wxy/catkin_ws/src/Universal_Robots_ROS_Driver/ur_calibration/src/calibration_correction.cpp:111:54: warning: ‘boost::filesystem::path boost::filesystem::complete(const boost::filesystem::path&)’ is deprecated: Use absolute() instead [-Wdeprecated-declarations]
111 | fs::path out_path = fs::complete(output_filename_);
| ^
In file included from /usr/local/include/boost/filesystem.hpp:19,
from /home/wxy/catkin_ws/src/Universal_Robots_ROS_Driver/ur_calibration/src/calibration_correction.cpp:44:
/usr/local/include/boost/filesystem/operations.hpp:353:13: note: declared here
353 | inline path complete(path const& p)
| ^~~~~~~~
[100%] Linking CXX executable /home/wxy/catkin_ws/devel/lib/ur_calibration/calibration_correction
/usr/bin/ld: CMakeFiles/calibration_correction.dir/src/calibration_correction.cpp.o: in function `boost::filesystem::path::parent_path() const':
calibration_correction.cpp:(.text._ZNK5boost10filesystem4path11parent_pathEv[_ZNK5boost10filesystem4path11parent_pathEv]+0x2c): undefined reference to `boost::filesystem::path::find_parent_path_size() const'
/usr/bin/ld: CMakeFiles/calibration_correction.dir/src/calibration_correction.cpp.o: in function `boost::filesystem::absolute(boost::filesystem::path const&, boost::filesystem::path const&)':
calibration_correction.cpp:(.text._ZN5boost10filesystem8absoluteERKNS0_4pathES3_[_ZN5boost10filesystem8absoluteERKNS0_4pathES3_]+0x3c): undefined reference to `boost::filesystem::detail::absolute(boost::filesystem::path const&, boost::filesystem::path const&, boost::system::error_code*)'
collect2: error: ld returned 1 exit status
make[2]: *** [Universal_Robots_ROS_Driver/ur_calibration/CMakeFiles/calibration_correction.dir/build.make:168:/home/wxy/catkin_ws/devel/lib/ur_calibration/calibration_correction] error 1
make[1]: *** [CMakeFiles/Makefile2:8728:Universal_Robots_ROS_Driver/ur_calibration/CMakeFiles/calibration_correction.dir/all] error 2
make: *** [Makefile:141:all] error 2
Invoking "make -j8 -l8" failed
Versions
- ROS Driver version: ROS1 Noetic
- OS version: Ubuntu 20.04 LTS
Impact
Cannot build the repository, so I can not use UR kits to do Robot related research.
Project status at point of discovered
In first time trying setup the needed environment.
Steps to Reproduce
I strictly follow the steps in README, but I just failed to build