Closed duartepolonia closed 5 years ago
Try to reinstall PhoXi Controll and if the issues persist provide us with result from cmd/terminal
env
I assume the error is because it does not find the PHOXI_LIB. I'm using the GCC version 5.4.0, so in the install_prerequisities.sh file I had to update it accordingly (not sure if this is related to the error). Please note that PhoXiControl runs fine if I run it separate from ROS. My problem is when I try to link it with ROS using the package: https://github.com/photoneo/phoxi_camera When I do catkin_make I get this error at the linkage phase:
[100%] Linking CXX executable /home/duarte/catkin_ws/devel/lib/phoxi_camera/phoxi_camera
CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function init_config(pho::api::PPhoXi&)': phoxi_camera_node.cpp:(.text+0x38c): undefined reference to
ros::param::set(std::string const&, int)'
phoxi_camera_node.cpp:(.text+0x3e5): undefined reference to ros::param::set(std::string const&, int)' phoxi_camera_node.cpp:(.text+0x46f): undefined reference to
ros::param::set(std::string const&, int)'
phoxi_camera_node.cpp:(.text+0x507): undefined reference to ros::param::set(std::string const&, int)' phoxi_camera_node.cpp:(.text+0x599): undefined reference to
ros::param::set(std::string const&, int)'
CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o:phoxi_camera_node.cpp:(.text+0x617): more undefined references to ros::param::set(std::string const&, int)' follow CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function
init_config(pho::api::PPhoXi&)':
phoxi_camera_node.cpp:(.text+0x6ae): undefined reference to ros::param::set(std::string const&, double)' phoxi_camera_node.cpp:(.text+0x74a): undefined reference to
ros::param::set(std::string const&, bool)'
phoxi_camera_node.cpp:(.text+0x7e1): undefined reference to ros::param::set(std::string const&, bool)' phoxi_camera_node.cpp:(.text+0x86f): undefined reference to
ros::param::set(std::string const&, bool)'
phoxi_camera_node.cpp:(.text+0x8fa): undefined reference to ros::param::set(std::string const&, bool)' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function
get_device_list()':
phoxi_camera_node.cpp:(.text+0x1063): undefined reference to pho::api::PhoXiFactory::StartConsoleOutput(std::string const&)' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function
connect_camera(phoxicamera::ConnectCameraRequest<std::allocatorpho::api::PhoXiDeviceInformation::operator std::string() const' phoxi_camera_node.cpp:(.text+0x127e): undefined reference to
pho::api::PhoXiFactory::Create(std::string const&)'
CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function save_frame(phoxi_camera::SaveFrameRequest_<std::allocator<void> >&, phoxi_camera::SaveFrameResponse_<std::allocator<void> >&)': phoxi_camera_node.cpp:(.text+0x20e2): undefined reference to
pho::api::Frame::SaveAsPly(std::string const&, bool, bool, bool, bool, bool, bool, bool, bool) const'
CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function get_hardware_identification(phoxi_camera::GetHardwareIdentificationRequest_<std::allocator<void> >&, phoxi_camera::GetHardwareIdentificationResponse_<std::allocator<void> >&)': phoxi_camera_node.cpp:(.text+0x2264): undefined reference to
pho::api::PhoXiFeaturemain': phoxi_camera_node.cpp:(.text+0x2344): undefined reference to
ros::init(int&, char, std::string const&, unsigned int)'
phoxi_camera_node.cpp:(.text+0x23bb): 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&)' phoxi_camera_node.cpp:(.text+0x2441): undefined reference to
ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::lessphoxi_camera::phoxi_cameraConfig::__fromMessage__(dynamic_reconfigure::Config_<std::allocator<void> >&)': phoxi_camera_node.cpp:(.text._ZN12phoxi_camera18phoxi_cameraConfig15__fromMessage__ERN19dynamic_reconfigure7Config_ISaIvEEE[_ZN12phoxi_camera18phoxi_cameraConfig15__fromMessage__ERN19dynamic_reconfigure7Config_ISaIvEEE]+0x220): undefined reference to
ros::console::initializeLogLocation(ros::console::LogLocation, std::string const&, ros::console::levels::Level)'
phoxi_camera_node.cpp:(.text._ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE[_ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE]+0x315): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation, std::string const&, ros::console::levels::Level)'
phoxi_camera_node.cpp:(.text._ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE[_ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE]+0x416): undefined reference to ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)' phoxi_camera_node.cpp:(.text._ZN12phoxi_camera18phoxi_cameraConfig15__fromMessage__ERN19dynamic_reconfigure7Config_ISaIvEEE[_ZN12phoxi_camera18phoxi_cameraConfig15__fromMessage__ERN19dynamic_reconfigure7Config_ISaIvEEE]+0x546): undefined reference to
ros::console::initializeLogLocation(ros::console::LogLocation, std::string const&, ros::console::levels::Level)'
phoxi_camera_node.cpp:(.text._ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE[_ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE]+0x647): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation, std::string const&, ros::console::levels::Level)'
CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o:phoxi_camera_node.cpp:(.text._ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE[_ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE]+0x77f): more undefined references to ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)' follow CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function
phoxi_camera::phoxi_cameraConfig::ParamDescriptionros::NodeHandle::getParam(std::string const&, bool&) const' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function
phoxi_camera::phoxi_cameraConfig::ParamDescriptionros::NodeHandle::setParam(std::string const&, bool) const' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function
phoxi_camera::phoxi_cameraConfig::ParamDescriptionros::NodeHandle::getParam(std::string const&, double&) const' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function
phoxi_camera::phoxi_cameraConfig::ParamDescriptionros::NodeHandle::setParam(std::string const&, double) const' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function
phoxi_camera::phoxi_cameraConfig::ParamDescriptionros::NodeHandle::getParam(std::string const&, int&) const' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function
phoxi_camera::phoxi_cameraConfig::ParamDescription
Thank you for your provided info about the error. According to this data, the issue is caused by ROS - undefined reference to ros::NodeHandle etc... Did u have made any changes within ROS ?
I already did that and also formatted my PC. And ROS is working fine with other packages so I don't think that is the problem. It should be related with the code of phoxi_camera package (ROS package), that does not find the PHOXI_LIB, according to the error that I posted above. (e.g. I can't find this lib anywhere)
Maybe someone that tried to install this package (https://github.com/photoneo/phoxi_camera) has already experienced the same issue?
Appreciate any help.
Thank you.
What comes to my mind is question if there was made some changes in our ROS package ?
The only thing I changed was, as I mentioned above, in the "install_prerequisities.sh" file I changed gcc version 4.9 to 5.4.0, in order to match with the gcc version that I have installed.. apart of that, everything is exactly as I cloned
At this moment we can arrange Team Viewer meeting for tomorrow - 17 01 2018 - at 14:00 CET ,so we can help you with this issue.
If you want this meeting, just send email to lesay@photoneo.com - with subject in message : Fwd: [photoneo/phoxi_camera] phoxi_camera (#10)
provide credentials for Team Viewer - ID and Password into the email
Thank you, I will send it now.
BorisLesay,
Thank you for your assistance at installing the this ROS package. The problem was related to my gcc and g++ installation. These compiler-drivers were installed in a wrong way, so I fixed this problem with the following lines (did not need to reinstall Ubuntu and ROS): $ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 120 --slave /usr/bin/g++ g++ /usr/bin/g++-5 $ sudo update-alternatives --config gcc (info source: https://stackoverflow.com/questions/7832892/how-to-change-the-default-gcc-compiler-in-ubuntu)
BorisLesay,
I have another question please:
About the ROS services available there is limited information. I want to call the service that publishes the pointcloud. I assumed it was the "/phoxi_camera/start_acquisition" topic, but it does not publish information in the /phoxi_camera/pointcloud topic.
Then I tried to call the service /phoxi_camera/get_frame and it published 1 single pointcloud msg. However, it asks for id arguments # 0,1,...etc which I don't know what is the meaning e.g. $ rosservice call /phoxi_camera/getframe "in: 1"
Could you please explain what is meaning of the "in_: " filed? Also, is there any service available in this package that publishes the pointcloud continuously (not only a single msg)?
Thank you, Duarte
rosservice call /phoxi_camera/getframe "in: 1"
Hi there,
Thank you for informing us that issue was caused by changes/wrong installation compilers within OS. Therefore is the first step mentioned as clean install of OS.
I'm going to check this new question/issue and after feedback from our ROS team I'm going to inform you directly.
Best regards Photoneo Support Team
Hello,
I'm trying to install photoneo camera in ubuntu 16 and with ROS kinetic. I'm using this package: https://github.com/photoneo/phoxi_camera (master branch).
I also downloaded the PhotoneoPhoXiControlInstaller-1.1.3-ubuntu14.04LTS-64.rar package from http://www.photoneo.com/download/
When I do catkin_make I get the following error:
[ 60%] Built target phoxi_camera_generate_messages_eus [ 96%] Built target phoxi_camera_generate_messages_nodejs [ 96%] Built target phoxi_camera_generate_messages [ 98%] Linking CXX executable ../devel/lib/phoxi_camera/phoxi_camera CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function, std::allocator<std::pair<std::string const, std::string> > > const&)'
phoxi_camera_node.cpp:(.text+0x2439): undefined reference to >&)':
phoxi_camera_node.cpp:(.text._ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE[_ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE]+0x220): undefined reference to
init_config(pho::api::PPhoXi&)': phoxi_camera_node.cpp:(.text+0x38c): undefined reference to
ros::param::set(std::string const&, int)' phoxi_camera_node.cpp:(.text+0x3e5): undefined reference toros::param::set(std::string const&, int)' phoxi_camera_node.cpp:(.text+0x46f): undefined reference to
ros::param::set(std::string const&, int)' phoxi_camera_node.cpp:(.text+0x507): undefined reference toros::param::set(std::string const&, int)' phoxi_camera_node.cpp:(.text+0x599): undefined reference to
ros::param::set(std::string const&, int)' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o:phoxi_camera_node.cpp:(.text+0x617): more undefined references toros::param::set(std::string const&, int)' follow CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function
init_config(pho::api::PPhoXi&)': phoxi_camera_node.cpp:(.text+0x6ae): undefined reference toros::param::set(std::string const&, double)' phoxi_camera_node.cpp:(.text+0x74a): undefined reference to
ros::param::set(std::string const&, bool)' phoxi_camera_node.cpp:(.text+0x7e1): undefined reference toros::param::set(std::string const&, bool)' phoxi_camera_node.cpp:(.text+0x86f): undefined reference to
ros::param::set(std::string const&, bool)' phoxi_camera_node.cpp:(.text+0x8fa): undefined reference toros::param::set(std::string const&, bool)' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function
main': phoxi_camera_node.cpp:(.text+0x233c): undefined reference toros::init(int&, char**, std::string const&, unsigned int)' phoxi_camera_node.cpp:(.text+0x23b3): undefined reference to
ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::lessros::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&)' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In function
phoxi_camera::phoxi_cameraConfig::fromMessage(dynamicreconfigure::Config<std::allocatorros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)' phoxi_camera_node.cpp:(.text._ZN12phoxi_camera18phoxi_cameraConfig15__fromMessage__ERN19dynamic_reconfigure7Config_ISaIvEEE[_ZN12phoxi_camera18phoxi_cameraConfig15__fromMessage__ERN19dynamic_reconfigure7Config_ISaIvEEE]+0x315): undefined reference to
ros::console::initializeLogLocation(ros::console::LogLocation, std::string const&, ros::console::levels::Level)' phoxi_camera_node.cpp:(.text._ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE[_ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE]+0x416): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation, std::string const&, ros::console::levels::Level)' phoxi_camera_node.cpp:(.text._ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE[_ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE]+0x546): undefined reference toros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)' phoxi_camera_node.cpp:(.text._ZN12phoxi_camera18phoxi_cameraConfig15__fromMessage__ERN19dynamic_reconfigure7Config_ISaIvEEE[_ZN12phoxi_camera18phoxi_cameraConfig15__fromMessage__ERN19dynamic_reconfigure7Config_ISaIvEEE]+0x647): undefined reference to
ros::console::initializeLogLocation(ros::console::LogLocation, std::string const&, ros::console::levels::Level)' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o:phoxi_camera_node.cpp:(.text._ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE[_ZN12phoxi_camera18phoxi_cameraConfig15fromMessageERN19dynamic_reconfigure7Config_ISaIvEEE]+0x77f): more undefined references to `ros::console::initializeLogLocation(ros::console::LogLocation, std::string const&, ros::console::levels::Level)' follow CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In functionphoxi_camera::phoxi_cameraConfig::ParamDescription<bool>::fromServer(ros::NodeHandle const&, phoxi_camera::phoxi_cameraConfig&) const': phoxi_camera_node.cpp:(.text._ZNK12phoxi_camera18phoxi_cameraConfig16ParamDescriptionIbE10fromServerERKN3ros10NodeHandleERS0_[_ZNK12phoxi_camera18phoxi_cameraConfig16ParamDescriptionIbE10fromServerERKN3ros10NodeHandleERS0_]+0x39): undefined reference to
ros::NodeHandle::getParam(std::string const&, bool&) const' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In functionphoxi_camera::phoxi_cameraConfig::ParamDescription<bool>::toServer(ros::NodeHandle const&, phoxi_camera::phoxi_cameraConfig const&) const': phoxi_camera_node.cpp:(.text._ZNK12phoxi_camera18phoxi_cameraConfig16ParamDescriptionIbE8toServerERKN3ros10NodeHandleERKS0_[_ZNK12phoxi_camera18phoxi_cameraConfig16ParamDescriptionIbE8toServerERKN3ros10NodeHandleERKS0_]+0x3f): undefined reference to
ros::NodeHandle::setParam(std::string const&, bool) const' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In functionphoxi_camera::phoxi_cameraConfig::ParamDescription<double>::fromServer(ros::NodeHandle const&, phoxi_camera::phoxi_cameraConfig&) const': phoxi_camera_node.cpp:(.text._ZNK12phoxi_camera18phoxi_cameraConfig16ParamDescriptionIdE10fromServerERKN3ros10NodeHandleERS0_[_ZNK12phoxi_camera18phoxi_cameraConfig16ParamDescriptionIdE10fromServerERKN3ros10NodeHandleERS0_]+0x39): undefined reference to
ros::NodeHandle::getParam(std::string const&, double&) const' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In functionphoxi_camera::phoxi_cameraConfig::ParamDescription<double>::toServer(ros::NodeHandle const&, phoxi_camera::phoxi_cameraConfig const&) const': phoxi_camera_node.cpp:(.text._ZNK12phoxi_camera18phoxi_cameraConfig16ParamDescriptionIdE8toServerERKN3ros10NodeHandleERKS0_[_ZNK12phoxi_camera18phoxi_cameraConfig16ParamDescriptionIdE8toServerERKN3ros10NodeHandleERKS0_]+0x45): undefined reference to
ros::NodeHandle::setParam(std::string const&, double) const' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In functionphoxi_camera::phoxi_cameraConfig::ParamDescription<int>::fromServer(ros::NodeHandle const&, phoxi_camera::phoxi_cameraConfig&) const': phoxi_camera_node.cpp:(.text._ZNK12phoxi_camera18phoxi_cameraConfig16ParamDescriptionIiE10fromServerERKN3ros10NodeHandleERS0_[_ZNK12phoxi_camera18phoxi_cameraConfig16ParamDescriptionIiE10fromServerERKN3ros10NodeHandleERS0_]+0x39): undefined reference to
ros::NodeHandle::getParam(std::string const&, int&) const' CMakeFiles/phoxi_camera.dir/src/phoxi_camera_node.cpp.o: In functionphoxi_camera::phoxi_cameraConfig::ParamDescription<int>::toServer(ros::NodeHandle const&, phoxi_camera::phoxi_cameraConfig const&) const': phoxi_camera_node.cpp:(.text._ZNK12phoxi_camera18phoxi_cameraConfig16ParamDescriptionIiE8toServerERKN3ros10NodeHandleERKS0_[_ZNK12phoxi_camera18phoxi_cameraConfig16ParamDescriptionIiE8toServerERKN3ros10NodeHandleERKS0_]+0x3b): undefined reference to
ros::NodeHandle::setParam(std::string const&, int) const' collect2: error: ld returned 1 exit status phoxi_camera/CMakeFiles/phoxi_camera.dir/build.make:540: recipe for target 'devel/lib/phoxi_camera/phoxi_camera' failed make[2]: [devel/lib/phoxi_camera/phoxi_camera] Error 1 CMakeFiles/Makefile2:511: recipe for target 'phoxi_camera/CMakeFiles/phoxi_camera.dir/all' failed make[1]: [phoxi_camera/CMakeFiles/phoxi_camera.dir/all] Error 2 Makefile:138: recipe for target 'all' failed make: *** [all] Error 2 Invoking "make -j4 -l4" failedAny thoughts for what the problem can be? Can it be related to my GCC version?
Thank you.