Невозможно сослаться на UHD (USRP)
Существует некоторая проблема с компоновщиком при компиляции программы cpp, которую я использую g++ и ubuntu 12.04
Установлен UHD из репо. Файл libuhd.so находится в /usr/lib
Теперь мой вопрос
1. Для линковки uhd я использовал -luhd, но это дает мне ошибочную неопределенную ссылку на `uhd::set_thread_priority_safe(float, bool)'
Должен ли я добавить путь к библиотеке libuhd в LD_LIBRARY_PATH?
Я сделал это командой export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/libuhd.so
После этого я попытался снова скомпилировать, но та же ошибка? Было бы здорово, если бы вы могли мне помочь Спасибо
1 ответ
Является ли uhd::set_thread_priority_safe единственной функцией UHD, которую вы вызываете во всей вашей программе? Странно, что это единственная неопределенная ссылка, которую вы видите в своей программе. Если это единственная функция, то она просто не находит библиотеку. Если это не так, это звучит как странная версия UHD.
Вы пытались сделать:
$ sudo ldconfig
... после добавления пути к библиотеке /etc/ld.so.conf?
Когда вы говорите, что установили его из репозитория, на какой репозиторий вы ссылаетесь? В каком дистрибутиве вы работаете?