NVIDIA-AI-IOT / ros2_tao_pointpillars

ROS2 node for 3D object detection using TAO-PointPillars.
Apache License 2.0
70 stars 22 forks source link

Compile error : pp_inference_node.cpp #4

Open miharaka opened 1 year ago

miharaka commented 1 year ago

When trying to build "pp_infer" package in the following environment, the following error occurs. I don't know how to improve on my own, so please let me know.

Also, I think that compiling and installing tao-conver are not related, but is it necessary to install tao-converter to compile?

TensorRT : 8.6.0.12-1 TensorRT : OSS 22.02 ROS Foxy tao-converter : not install (Due to some reasons, cannot install it.)

OS : Ubuntu 20.04 CPU : Inter(R) Core(TM) i9-10900X CPU@3.70GHz GPU : Qyadro RTX800 * 2 memory : 64GB Python : 3.7 CUDA : 11.6.1

error :

miharaka@linux:~/pointpillars_ws$ colcon build --packages-select pp_infer
Starting >>> pp_infer
--- stderr: pp_infer                             
/usr/bin/ld: CMakeFiles/pp_infer.dir/src/pp_inference_node.cpp.o: in function 
`rclcpp::create_subscription_factory<sensor_msgs::msg::PointCloud2_<std::allocator<void> >, std::_Bind<void (MinimalPublisher::*
(MinimalPublisher*, std::_Placeholder<1>))(std::shared_ptr<sensor_msgs::msg::PointCloud2_<std::allocator<void> > const>)>, 
std::allocator<void>, sensor_msgs::msg::PointCloud2_<std::allocator<void> >, 
rclcpp::Subscription<sensor_msgs::msg::PointCloud2_<std::allocator<void> >, std::allocator<void>, 
rclcpp::message_memory_strategy::MessageMemoryStrategy<sensor_msgs::msg::PointCloud2_<std::allocator<void> >, 
std::allocator<void> > >, 
rclcpp::message_memory_strategy::MessageMemoryStrategy<sensor_msgs::msg::PointCloud2_<std::allocator<void> >, 
std::allocator<void> > >(std::_Bind<void (MinimalPublisher::*(MinimalPublisher*, std::_Placeholder<1>))
(std::shared_ptr<sensor_msgs::msg::PointCloud2_<std::allocator<void> > const>)>&&, 
rclcpp::SubscriptionOptionsWithAllocator<std::allocator<void> > const&, 
rclcpp::message_memory_strategy::MessageMemoryStrategy<sensor_msgs::msg::PointCloud2_<std::allocator<void> >, 
std::allocator<void> >::SharedPtr, 
std::shared_ptr<rclcpp::topic_statistics::SubscriptionTopicStatistics<sensor_msgs::msg::PointCloud2_<std::allocator<void> > > >)::
{lambda(rclcpp::node_interfaces::NodeBaseInterface*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, rclcpp::QoS const&)#1}::operator()(rclcpp::node_interfaces::NodeBaseInterface*, std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, rclcpp::QoS const&) const':
pp_inference_node.cpp:
(.text._ZZN6rclcpp27create_subscription_factoryIN11sensor_msgs3msg12PointCloud2_ISaIvEEESt5_BindIFM16MinimalPublisherFvSt10s
hared_ptrIKS5_EEPS7_St12_PlaceholderILi1EEEES4_S5_NS_12SubscriptionIS5_S4_NS_23message_memory_strategy21MessageMemory
StrategyIS5_S4_EEEESL_EENS_19SubscriptionFactoryEOT0_RKNS_32SubscriptionOptionsWithAllocatorIT1_EENT4_9SharedPtrES8_INS_
16topic_statistics27SubscriptionTopicStatisticsIT2_EEEENKUlPNS_15node_interfaces17NodeBaseInterfaceERKNSt7__cxx1112basic_stri
ngIcSt11char_traitsIcESaIcEEERKNS_3QoSEE_clES14_S1C_S1F_[_ZZN6rclcpp27create_subscription_factoryIN11sensor_msgs3msg12PointCloud2
_ISaIvEEESt5_BindIFM16MinimalPublisherFvSt10shared_ptrIKS5_EEPS7_St12_PlaceholderILi1EEEES4_S5_NS_12SubscriptionIS5_
S4_NS_23message_memory_strategy21MessageMemoryStrategyIS5_S4_EEEESL_EENS_19SubscriptionFactoryEOT0_RKNS_
32SubscriptionOptionsWithAllocatorIT1_EENT4_9SharedPtrES8_INS_16topic_statistics27SubscriptionTopicStatisticsIT2_EEEENKUlPNS_
15node_interfaces17NodeBaseInterfaceERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_3QoSEE_clES14_S1C_S1F_]
+0x46): undefined reference to `rosidl_message_type_support_t const*
rosidl_typesupport_cpp::get_message_type_support_handle<sensor_msgs::msg::PointCloud2_<std::allocator<void> > >()'
collect2: error: ld returned 1 exit status