ca_driver failing during catkin build
chaosbuster opened this issue · 1 comments
chaosbuster commented
The build for the source is failing on the ca_driver. Followed the steps for the Install and Compile sections with the exception that I'm running kinetic.
I am running on a Pi 3 Model B (ARMv71) with Ubuntu 16.04.5 LTS. I have ensured that I have an updated ros-kinetic and Ubuntu 16.04 distribution. I have sourced kinetic and the catkin workspace.
Here's the results when I run catkin build:
ubuntu@rrover32g:~/rrover$ catkin build
--------------------------------------------------------
Profile: default
Extending: [cached] /opt/ros/kinetic
Workspace: /home/ubuntu/rrover
--------------------------------------------------------
Source Space: [exists] /home/ubuntu/rrover/src
Log Space: [exists] /home/ubuntu/rrover/logs
Build Space: [exists] /home/ubuntu/rrover/build
Devel Space: [exists] /home/ubuntu/rrover/devel
Install Space: [unused] /home/ubuntu/rrover/install
DESTDIR: [unused] None
--------------------------------------------------------
Devel Space Layout: linked
Install Space Layout: None
--------------------------------------------------------
Additional CMake Args: None
Additional Make Args: None
Additional catkin Make Args: None
Internal Make Job Server: True
Cache Job Environments: False
--------------------------------------------------------
Whitelisted Packages: None
Blacklisted Packages: None
--------------------------------------------------------
Workspace configuration appears valid.
--------------------------------------------------------
[build] Found '5' packages in 0.0 seconds.
[build] Package table is up to date.
Starting >>> ca_description
Starting >>> ca_msgs
Starting >>> ca_tools
Finished <<< ca_description [ 1.2 seconds ]
Finished <<< ca_tools [ 0.8 seconds ]
Finished <<< ca_msgs [ 1.9 seconds ]
Starting >>> ca_driver
________________________________________________________________________________________________________________
Errors << ca_driver:make /home/ubuntu/rrover/logs/ca_driver/build.make.001.log
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `tf::quaternionTFToMsg(tf::Quaternion const&, geometry_msgs::Quaternion_<std::allocator<void> >&)':
create_driver.cpp:(.text+0xec): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `CreateDriver::CreateDriver(ros::NodeHandle&)':
create_driver.cpp:(.text+0x418): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
create_driver.cpp:(.text+0x45a): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
create_driver.cpp:(.text+0x45e): undefined reference to `ros::this_node::getName()'
create_driver.cpp:(.text+0x5f4): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
create_driver.cpp:(.text+0xc2e): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text+0xd34): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, std::basic_stringstream<char, std::char_traits<char>, std::allocator<char> > const&, char const*, int, char const*)'
create_driver.cpp:(.text+0xdaa): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text+0xe8a): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, std::basic_stringstream<char, std::char_traits<char>, std::allocator<char> > const&, char const*, int, char const*)'
create_driver.cpp:(.text+0xf5c): undefined reference to `create::Create::connect(std::string const&, int const&)'
create_driver.cpp:(.text+0xfca): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text+0x10ca): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text+0x11de): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text+0x2980): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `CreateDriver::~CreateDriver()':
create_driver.cpp:(.text+0x3510): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o:create_driver.cpp:(.text+0x3c14): more undefined references to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)' follow
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `CreateDriver::defineSongCallback(boost::shared_ptr<ca_msgs::DefineSong_<std::allocator<void> > const> const&)':
create_driver.cpp:(.text+0x4390): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, std::basic_stringstream<char, std::char_traits<char>, std::allocator<char> > const&, char const*, int, char const*)'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `CreateDriver::playSongCallback(boost::shared_ptr<ca_msgs::PlaySong_<std::allocator<void> > const> const&)':
create_driver.cpp:(.text+0x445a): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text+0x452a): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, std::basic_stringstream<char, std::char_traits<char>, std::allocator<char> > const&, char const*, int, char const*)'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `CreateDriver::publishMode()':
create_driver.cpp:(.text+0x5dea): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `CreateDriver::spin()':
create_driver.cpp:(.text+0x612e): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `main':
create_driver.cpp:(.text+0x625c): undefined reference to `ros::init(int&, char**, std::string const&, unsigned int)'
create_driver.cpp:(.text+0x629a): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
create_driver.cpp:(.text+0x63c0): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text+0x64a4): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, std::basic_stringstream<char, std::char_traits<char>, std::allocator<char> > const&, char const*, int, char const*)'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `diagnostic_updater::Updater::force_update()':
create_driver.cpp:(.text._ZN18diagnostic_updater7Updater12force_updateEv[_ZN18diagnostic_updater7Updater12force_updateEv]+0x1b4): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text._ZN18diagnostic_updater7Updater12force_updateEv[_ZN18diagnostic_updater7Updater12force_updateEv]+0x328): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `diagnostic_updater::Updater::update_diagnostic_period()':
create_driver.cpp:(.text._ZN18diagnostic_updater7Updater24update_diagnostic_periodEv[_ZN18diagnostic_updater7Updater24update_diagnostic_periodEv]+0x48): undefined reference to `ros::NodeHandle::getParamCached(std::string const&, double&) const'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `void ros::Publisher::publish<diagnostic_msgs::DiagnosticArray_<std::allocator<void> > >(diagnostic_msgs::DiagnosticArray_<std::allocator<void> > const&) const':
create_driver.cpp:(.text._ZNK3ros9Publisher7publishIN15diagnostic_msgs16DiagnosticArray_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN15diagnostic_msgs16DiagnosticArray_ISaIvEEEEEvRKT_]+0x7a): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text._ZNK3ros9Publisher7publishIN15diagnostic_msgs16DiagnosticArray_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN15diagnostic_msgs16DiagnosticArray_ISaIvEEEEEvRKT_]+0x186): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text._ZNK3ros9Publisher7publishIN15diagnostic_msgs16DiagnosticArray_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN15diagnostic_msgs16DiagnosticArray_ISaIvEEEEEvRKT_]+0x27a): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text._ZNK3ros9Publisher7publishIN15diagnostic_msgs16DiagnosticArray_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN15diagnostic_msgs16DiagnosticArray_ISaIvEEEEEvRKT_]+0x390): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text._ZNK3ros9Publisher7publishIN15diagnostic_msgs16DiagnosticArray_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN15diagnostic_msgs16DiagnosticArray_ISaIvEEEEEvRKT_]+0x49c): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o:create_driver.cpp:(.text._ZNK3ros9Publisher7publishIN15diagnostic_msgs16DiagnosticArray_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN15diagnostic_msgs16DiagnosticArray_ISaIvEEEEEvRKT_]+0x5a8): more undefined references to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)' follow
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `bool ros::NodeHandle::param<std::string>(std::string const&, std::string&, std::string const&) const':
create_driver.cpp:(.text._ZNK3ros10NodeHandle5paramISsEEbRKSsRT_RKS4_[_ZNK3ros10NodeHandle5paramISsEEbRKSsRT_RKS4_]+0x12): undefined reference to `ros::NodeHandle::hasParam(std::string const&) const'
create_driver.cpp:(.text._ZNK3ros10NodeHandle5paramISsEEbRKSsRT_RKS4_[_ZNK3ros10NodeHandle5paramISsEEbRKSsRT_RKS4_]+0x22): undefined reference to `ros::NodeHandle::getParam(std::string const&, std::string&) const'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `bool ros::NodeHandle::param<double>(std::string const&, double&, double const&) const':
create_driver.cpp:(.text._ZNK3ros10NodeHandle5paramIdEEbRKSsRT_RKS4_[_ZNK3ros10NodeHandle5paramIdEEbRKSsRT_RKS4_]+0x12): undefined reference to `ros::NodeHandle::hasParam(std::string const&) const'
create_driver.cpp:(.text._ZNK3ros10NodeHandle5paramIdEEbRKSsRT_RKS4_[_ZNK3ros10NodeHandle5paramIdEEbRKSsRT_RKS4_]+0x22): undefined reference to `ros::NodeHandle::getParam(std::string const&, double&) const'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `bool ros::NodeHandle::param<bool>(std::string const&, bool&, bool const&) const':
create_driver.cpp:(.text._ZNK3ros10NodeHandle5paramIbEEbRKSsRT_RKS4_[_ZNK3ros10NodeHandle5paramIbEEbRKSsRT_RKS4_]+0x12): undefined reference to `ros::NodeHandle::hasParam(std::string const&) const'
create_driver.cpp:(.text._ZNK3ros10NodeHandle5paramIbEEbRKSsRT_RKS4_[_ZNK3ros10NodeHandle5paramIbEEbRKSsRT_RKS4_]+0x22): undefined reference to `ros::NodeHandle::getParam(std::string const&, bool&) const'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `bool ros::NodeHandle::param<int>(std::string const&, int&, int const&) const':
create_driver.cpp:(.text._ZNK3ros10NodeHandle5paramIiEEbRKSsRT_RKS4_[_ZNK3ros10NodeHandle5paramIiEEbRKSsRT_RKS4_]+0x12): undefined reference to `ros::NodeHandle::hasParam(std::string const&) const'
create_driver.cpp:(.text._ZNK3ros10NodeHandle5paramIiEEbRKSsRT_RKS4_[_ZNK3ros10NodeHandle5paramIiEEbRKSsRT_RKS4_]+0x22): undefined reference to `ros::NodeHandle::getParam(std::string const&, int&) const'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o: In function `void ros::Publisher::publish<nav_msgs::Odometry_<std::allocator<void> > >(nav_msgs::Odometry_<std::allocator<void> > const&) const':
create_driver.cpp:(.text._ZNK3ros9Publisher7publishIN8nav_msgs9Odometry_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN8nav_msgs9Odometry_ISaIvEEEEEvRKT_]+0x7a): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text._ZNK3ros9Publisher7publishIN8nav_msgs9Odometry_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN8nav_msgs9Odometry_ISaIvEEEEEvRKT_]+0x186): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text._ZNK3ros9Publisher7publishIN8nav_msgs9Odometry_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN8nav_msgs9Odometry_ISaIvEEEEEvRKT_]+0x27a): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text._ZNK3ros9Publisher7publishIN8nav_msgs9Odometry_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN8nav_msgs9Odometry_ISaIvEEEEEvRKT_]+0x390): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
create_driver.cpp:(.text._ZNK3ros9Publisher7publishIN8nav_msgs9Odometry_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN8nav_msgs9Odometry_ISaIvEEEEEvRKT_]+0x49c): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
CMakeFiles/ca_driver.dir/src/create_driver.cpp.o:create_driver.cpp:(.text._ZNK3ros9Publisher7publishIN8nav_msgs9Odometry_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN8nav_msgs9Odometry_ISaIvEEEEEvRKT_]+0x5a8): more undefined references to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)' follow
collect2: error: ld returned 1 exit status
make[2]: *** [/home/ubuntu/rrover/devel/.private/ca_driver/lib/ca_driver/ca_driver] Error 1
make[1]: *** [CMakeFiles/ca_driver.dir/all] Error 2
make: *** [all] Error 2
cd /home/ubuntu/rrover/build/ca_driver; catkin build --get-env ca_driver | catkin env -si /usr/bin/make --jobserver-fds=6,7 -j; cd -
................................................................................................................
Failed << ca_driver:make [ Exited with code 2 ]
Failed <<< ca_driver [ 7.3 seconds ]
[build] Summary: 3 of 4 packages succeeded.
[build] Ignored: 1 packages were skipped or are blacklisted.
[build] Warnings: None.
[build] Abandoned: None.
[build] Failed: 1 packages failed.
[build] Runtime: 10.2 seconds total.
jacobperron commented
Which version of the driver were you trying to compile? I suggest checking out the kinetic
branch.