ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | Q&A
Ask Your Question
0 undefined reference to ‘powf@GLIBC_2.27’

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

jxl gravatar image

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

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-, LaydbugSDK_1.16.3.48_amd64 and spinnaker-, 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/ 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/ undefined reference to ‘FlyCapture2::AVIRecorder::AVIRecorder()’
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/ 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

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

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. 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


@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 -0600 )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 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


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

Seen: 5,097 times

Last updated: Jul 08 '19