ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

Libflycapture.so: undefined reference to ‘powf@GLIBC_2.27’

asked 2019-07-02 05:41:37 -0500

jxl gravatar image

updated 2019-07-02 06:54:42 -0500

Hello, my system info: x86_64, Ubuntu 16.04.6, kernel 4.15.0-54-generic, gcc5.4.0, g++5.4.0, autoware-1.11.1.

Installed flycapture2-2.13.3.31-amd64-pkg_xenial, LaydbugSDK_1.16.3.48_amd64 and spinnaker-1.21.0.61-amd64-Ubuntu16.04, then reboot to build autoware. when building with AUTOWARE_COMPILE_WITH_CUDA=1 ./colcon_release, output:

/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libflycapture.so: undefined reference to  ‘powf@GLIBC_2.27’
collect2: error: ld returned 1 exit status
make[2]: *** [devel/lib/autoware_pointgrey_drivers/grasshopper3_camera] Error 1
make[1]: *** [CMakeFiles/grasshopper3_camera.dir/all] Error 2
make[1]: *** Waiting for unfinished tasks....
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libladybug.so: undefined reference to ‘FlyCapture2::AVIRecorder::AVIRecorder()’
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libflycapture.so: undefined reference to ‘powf@GLIBC_2.27’
collect2: error: ld returned 1 exit status
make[2]: *** [devel/lib/autoware_pointgrey_drivers/ladybug_camera] Error 1
make[1]: *** [CMakeFiles/ladybug_camera.dir/all] Error 2
make: *** [all] Error 2
 ---
Failed   <<< autoware_pointgrey_drivers [ Exited with code 2 ]

In Autoware/ros/src/sensing/drivers/camera/packages/pointgrey, the README file doesn't specify the three matched SDK(flycapture, ladybug, spinnaker) version. How to fix this this problem? Did i missing something, thanks for your help!

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted
1

answered 2019-07-08 20:48:43 -0500

amc-nu gravatar image

@jxl There are two problem I can see here:

1. I suspect your system is not Ubuntu 16.04, but 18.04. (glibc version)

The highest glibc version available in Ubuntu 16.04 (as of July 2019) is 2.23, but the linker is stating your version is 2.27, which suspiciously corresponds to the one shipped in Ubuntu 18.04.

You might confirm your glib version executing: ldd --version

and your Ubuntu version executing: lsb_release -a

If you happen to be on Ubuntu 18.04, you'll need to remove previous xenial version, download and install the bionic version of the driver.

2. libladybug.so: undefined reference to ‘FlyCapture2::AVIRecorder::AVIRecorder()’

You cannot install standard FlyCapture SDK (for grashoppers, cameleon cameras, etc) simultaneously with Ladybug's FlyCapture.

edit flag offensive delete link more

Comments

@amc-nu Thanks for your time and guide very much, i will have a try. jxl@dell:~$ ldd --version ldd (Ubuntu GLIBC 2.23-0ubuntu11) 2.23 Copyright (C) 2016 自由软件基金会。 jxl@dell:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 16.04.6 LTS Release: 16.04 Codename: xenial jxl@dell:~$ .

jxl gravatar image jxl  ( 2019-07-09 07:22:05 -0500 )edit

Then it's the other way around, you have installed the bionic version of the FlyCapture SDK. which is expecting glib 2.27.

amc-nu gravatar image amc-nu  ( 2019-07-09 22:16:29 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2019-07-02 05:41:37 -0500

Seen: 6,165 times

Last updated: Jul 08 '19