Неопределенная ссылка на std :: condition_variable :: ждать в orb_slam3 с opencv 4.9.0 на UbuntuC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Неопределенная ссылка на std :: condition_variable :: ждать в orb_slam3 с opencv 4.9.0 на Ubuntu

Сообщение Anonymous »

Я сталкиваюсь с ошибкой линкера при создании проекта ORB_SLAM3, который связан с OpenCV 4.9.0, созданным из источника, используя GCC 9.4.0 на Ubuntu 18.04. Ошибка возникает при попытке связать исполняемый файл mono_tum: < /p>

Код: Выделить всё

/path/to/libopencv_core.so.4.9.0: undefined reference to `std::condition_variable::wait(std::unique_lock&)@GLIBCXX_3.4.30'
my setup:
компилятор: gcc 9.4.0
opencv: 4.9.0. /> Детали библиотеки:
libstdc ++. So.6 версия в моей системе: libstdc ++. So.6.0.32
подтвердил, что Glibcx_3.4.30 присутствует в /usr/lib/x86_64-linux-gnu/libstdc ++. so
  • Проверьте libopencv_core.so.4.9.0 зависимости с использованием LDD:
0 с использованием LDD:

.

Код: Выделить всё

ldd /path/to/libopencv_core.so.4.9.0
Вывод указывает на связь с /usr/lib/x86_64-linux-gnu/libstdc ++. So.6 .

Проверено condition_variable в libstdc ++. /> < /ul>
readelf -Ws /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep 'condition_variable'
< /code>
присутствуют символы, включая ожидание: < /p>
1348: 00000000000d96a0 8 FUNC GLOBAL DEFAULT 13 \_ZNSt18condition_variable4waitERSt11unique_lockISt5mutexE@@GLIBCXX_3.4.30
< /code>

Установите пути библиотеки явно в моей среде: < /li>
< /ul>
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
export LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LIBRARY_PATH
< /code>
Наблюдения: < /strong>
сама строительство opencv не создает ошибок.
orb_slam3 Build создает неопределенную ссылку. /> Что может привести к неопределенной ссылочной ошибке, даже если символ, по -видимому, присутствует? Библиотеки?>

Подробнее здесь: https://stackoverflow.com/questions/788 ... h-opencv-4
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»