MAVSDK: Mavsdk app fails to build on GLIBC 2.31
When building https://github.com/ARK-Electronics/logloader on Jetson Linux 35.5.0, I get the following error.
Mavsdk installed from the most recent release.
jetson@jetson:~/code/logloader$ make
-- The CXX compiler identification is GNU 9.4.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found OpenSSL: /usr/local/lib/libcrypto.so (Required is at least version "3.0.2")
-- Configuring done
-- Generating done
-- Build files have been written to: /home/jetson/code/logloader/build
make[1]: Entering directory '/home/jetson/code/logloader/build'
make[2]: Entering directory '/home/jetson/code/logloader/build'
make[3]: Entering directory '/home/jetson/code/logloader/build'
Scanning dependencies of target logloader
make[3]: Leaving directory '/home/jetson/code/logloader/build'
make[3]: Entering directory '/home/jetson/code/logloader/build'
[ 66%] Building CXX object CMakeFiles/logloader.dir/src/LogLoader.cpp.o
[ 66%] Building CXX object CMakeFiles/logloader.dir/src/main.cpp.o
[100%] Linking CXX executable logloader
/usr/bin/ld: /usr/lib/libmavsdk.so.2.8.0: undefined reference to `fstat64@GLIBC_2.33'
/usr/bin/ld: /usr/lib/libmavsdk.so.2.8.0: undefined reference to `std::__atomic_futex_unsigned_base::_M_futex_wait_until_steady(unsigned int*, unsigned int, bool, std::chrono::duration<long, std::ratio<1l, 1l> >, std::chrono::duration<long, std::ratio<1l, 1000000000l> >)@GLIBCXX_3.4.29'
/usr/bin/ld: /usr/lib/libmavsdk.so.2.8.0: undefined reference to `std::__throw_bad_array_new_length()@GLIBCXX_3.4.29'
/usr/bin/ld: /usr/lib/libmavsdk.so.2.8.0: undefined reference to `stat64@GLIBC_2.33'
/usr/bin/ld: /usr/lib/libmavsdk.so.2.8.0: undefined reference to `pthread_cond_clockwait@GLIBC_2.34'
/usr/bin/ld: /usr/lib/libmavsdk.so.2.8.0: undefined reference to `pthread_create@GLIBC_2.34'
/usr/bin/ld: /usr/lib/libmavsdk.so.2.8.0: undefined reference to `pthread_mutex_trylock@GLIBC_2.34'
/usr/bin/ld: /usr/lib/libmavsdk.so.2.8.0: undefined reference to `std::__exception_ptr::exception_ptr::_M_release()@CXXABI_1.3.13'
/usr/bin/ld: /usr/lib/libmavsdk.so.2.8.0: undefined reference to `__libc_single_threaded@GLIBC_2.32'
/usr/bin/ld: /usr/lib/libmavsdk.so.2.8.0: undefined reference to `pthread_join@GLIBC_2.34'
/usr/bin/ld: /usr/lib/libmavsdk.so.2.8.0: undefined reference to `pthread_detach@GLIBC_2.34'
/usr/bin/ld: /usr/lib/libmavsdk.so.2.8.0: undefined reference to `std::__exception_ptr::exception_ptr::_M_addref()@CXXABI_1.3.13'
/usr/bin/ld: /usr/lib/libmavsdk.so.2.8.0: undefined reference to `pthread_once@GLIBC_2.34'
collect2: error: ld returned 1 exit status
make[3]: *** [CMakeFiles/logloader.dir/build.make:102: logloader] Error 1
make[3]: Leaving directory '/home/jetson/code/logloader/build'
make[2]: *** [CMakeFiles/Makefile2:76: CMakeFiles/logloader.dir/all] Error 2
make[2]: Leaving directory '/home/jetson/code/logloader/build'
make[1]: *** [Makefile:130: all] Error 2
make[1]: Leaving directory '/home/jetson/code/logloader/build'
make: *** [Makefile:3: all] Error 2
jetson@jetson:~/code/logloader$
jetson@jetson:~/code/logloader$ ldd --version
ldd (Ubuntu GLIBC 2.31-0ubuntu9.14) 2.31
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.
jetson@jetson:~/code/logloader$ ldd
About this issue
- Original URL
- State: open
- Created 3 months ago
- Comments: 22 (9 by maintainers)
Bookworm, Debian 12