qtcreator Qt_5 не найден - PullRequest
0 голосов
/ 17 мая 2018

Здравствуйте, у меня проблема с запуском qtcreator под Ubuntu 16.04. Сообщенная ошибка:

qtcreator: /usr/bin/../lib/x86_64-linux-gnu/qtcreator/../libQt5Gui.so.5: version `Qt_5_PRIVATE_API' not found (required by /usr/lib/libQt5Widgets.so.5)
qtcreator: /usr/bin/../lib/x86_64-linux-gnu/qtcreator/../libQt5Gui.so.5: version `Qt_5' not found (required by /usr/lib/libQt5Widgets.so.5)

Я пробовал разные решения из других тем, но не могу этого сделать. Может кто-нибудь помочь или объяснить, в чем именно проблема? Несколько дней назад я смог запустить qtcreator, но когда я попробовал сегодня, я получил эту ошибку. Я думаю, что это может соответствовать установке какого-либо приложения, к сожалению, я не могу сказать, какое из них мне пришлось установить несколько.

Дополнительная информация:

qmake --version
QMake version 3.0
Using Qt version 5.5.1 in /usr/lib/x86_64-linux-gnu

У меня установлены только версии qt из официальных репозиториев, установлены следующие файлы:

  • / USR / Lib / libQt5Core.so.5.7.0
  • / USR / Lib / x86_64-Linux-гну / libQtCore.so.4.8.7
  • / USR / Lib / x86_64-Linux-гну / libQt5Core.so.5.5.1

Может ли быть проблема конфигурации? Есть ли способ перенастроить пути?

Наверное, тоже интересно, в тот же момент, когда я не могу запустить qtcreator, я не могу запустить rviz из пакета ros-kinetic-package.

rviz
This application failed to start because it could not find or load the Qt platform plugin "xcb"
in "".

Reinstalling the application may fix this problem.
Aborted (core dumped)

Я попытался очистить rviz, ros, qtcreator и снова установил его, я установил qt5-default, но не смог решить мою проблему. Спасибо за вашу помощь.

Редактировать: Хорошо, я потратил некоторое время и попробовал решение здесь снова: Ошибка при выполнении - версия `Qt_5 'не найдена, требуемая и это частично решает проблему. С LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/ qtcreator я могу начать qtcreator снова. Но это, конечно, не решает проблему вообще, как я могу перенастроить ее.

Редактировать 2: Решение LD_LIBRARY_PATH не помогает для проблемы rviz, оно говорит мне:

LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/ rviz
rviz: error while loading shared libraries: librviz.so: cannot open shared object file: No such file or directory

Я тогда попробовал

LD_LIBRARY_PATH=/opt/ros/kinetic/lib rviz

, что интересно принесло жизнь в жизнь.

Так что, похоже, мои пути перепутаны, вопрос в том, почему и как их исправить (помогает ли перемещать библиотеки Qt5.7 и ссылки в другой каталог)?

(Последнее, что следует отметить, другие инструменты ros, такие как rqt_console, rqt_plot, ... тоже не работают, если я не добавлю LIBRARY_PATH перед вызовом.

РЕДАКТИРОВАТЬ 3: Так что я думаю, что узнал немного больше внутри. У меня есть камера от FLIR, которая использует библиотеку под названием spinnaker. Для установки необходимо установить пакет .deb пакетов. Одним из них является spinview_qt- .deb. Он содержит версию QT5.7 и устанавливается в /usr/lib.

dpkg --contents spinview-qt-1.10.0.31_amd64.deb 
drwxr-xr-x root/root         0 2017-12-21 23:31 ./
drwxr-xr-x root/root         0 2017-12-21 23:31 ./usr/
drwxr-xr-x root/root         0 2017-12-21 23:31 ./usr/share/
drwxr-xr-x root/root         0 2017-12-21 23:31 ./usr/share/pixmaps/
-rw-r--r-- root/root    129041 2017-12-21 23:31 ./usr/share/pixmaps/SpinnakerIcon.ico
drwxr-xr-x root/root         0 2017-12-21 23:31 ./usr/share/applications/
-rw-r--r-- root/root       154 2017-12-21 23:31 ./usr/share/applications/spinview.desktop
drwxr-xr-x root/root         0 2017-12-21 23:31 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/
-rw-r--r-- root/root      9190 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/Apache_2.0.txt
-rw-r--r-- root/root    623763 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/Spinnaker-Open-Source-Licenses.pdf
-rw-r--r-- root/root      1485 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/FreeBSD.txt
-rw-r--r-- root/root     27032 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/lgpl_2.1.txt
-rw-r--r-- root/root      1337 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/boost_license.txt
-rw-r--r-- root/root       981 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/FLIR_license.txt
-rw-r--r-- root/root      1597 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/genicam_license.txt
-rw-r--r-- root/root       251 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/changelog.gz
-rw-r--r-- root/root      5387 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/OpenTK_license.txt
-rw-r--r-- root/root     17577 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/freeimage_license.txt
-rw-r--r-- root/root     20993 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/WPCC_BY_SA_license.txt
-rw-r--r-- root/root      7816 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/lgpl_3.0.txt
-rw-r--r-- root/root     25864 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/lgpl_2.0.txt
-rw-r--r-- root/root      2232 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/CLALLSERIAL_license.txt
-rw-r--r-- root/root     10439 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/CPOL_1.02.txt
drwxr-xr-x root/root         0 2017-12-21 23:31 ./usr/lib/
-rw-r--r-- root/root   5339752 2017-12-21 22:48 ./usr/lib/libQt5Core.so.5.7.0
-rw-r--r-- root/root  25047100 2017-12-21 22:48 ./usr/lib/libicudata.so.56.1
-rw-r--r-- root/root   1365560 2017-12-21 22:48 ./usr/lib/libQt5XcbQpa.so.5.7.0
-rw-r--r-- root/root   1432320 2017-12-21 22:48 ./usr/lib/libQt5Network.so.5.7.0
-rw-r--r-- root/root   5909528 2017-12-21 22:48 ./usr/lib/libQt5Gui.so.5.7.0
-rw-r--r-- root/root    356208 2017-12-21 22:48 ./usr/lib/libQt5OpenGL.so.5.7.0
-rw-r--r-- root/root   6614408 2017-12-21 22:48 ./usr/lib/libQt5Widgets.so.5.7.0
-rw-r--r-- root/root   3374854 2017-12-21 22:48 ./usr/lib/libicui18n.so.56.1
-rw-r--r-- root/root   2070162 2017-12-21 22:48 ./usr/lib/libicuuc.so.56.1
-rw-r--r-- root/root    527104 2017-12-21 22:48 ./usr/lib/libQt5DBus.so.5.7.0
drwxr-xr-x root/root         0 2017-12-21 23:31 ./usr/bin/
-rwxr-xr-x root/root    852544 2017-12-21 23:07 ./usr/bin/SpinView_QT
drwxr-xr-x root/root         0 2017-12-20 02:45 ./usr/bin/platforms/
-rw-r--r-- root/root    303544 2017-12-20 02:45 ./usr/bin/platforms/libqlinuxfb.so
-rw-r--r-- root/root     10192 2017-12-20 02:45 ./usr/bin/platforms/libqxcb.so
-rw-r--r-- root/root    141072 2017-12-20 02:45 ./usr/bin/platforms/libqoffscreen.so
-rw-r--r-- root/root    176720 2017-12-20 02:45 ./usr/bin/platforms/libqminimalegl.so
-rw-r--r-- root/root    140592 2017-12-20 02:45 ./usr/bin/platforms/libqminimal.so
-rw-r--r-- root/root      9968 2017-12-20 02:45 ./usr/bin/platforms/libqeglfs.so
-rwxr-xr-x root/root        70 2017-12-20 02:47 ./usr/bin/spinview
lrwxrwxrwx root/root         0 2017-12-21 23:31 ./usr/share/doc/spinview-qt1/LICENSE -> FLIR_license.txt
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5XcbQpa.so.5 -> libQt5XcbQpa.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5Gui.so.5.7 -> libQt5Gui.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5XcbQpa.so.5.7 -> libQt5XcbQpa.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5Network.so.5 -> libQt5Network.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5Gui.so -> libQt5Gui.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5XcbQpa.so -> libQt5XcbQpa.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5OpenGL.so.5.7 -> libQt5OpenGL.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5Network.so -> libQt5Network.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5Gui.so.5 -> libQt5Gui.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5DBus.so -> libQt5DBus.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5Core.so -> libQt5Core.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5Widgets.so.5 -> libQt5Widgets.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5OpenGL.so -> libQt5OpenGL.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libicuuc.so.56 -> libicuuc.so.56.1
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5Network.so.5.7 -> libQt5Network.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5Core.so.5.7 -> libQt5Core.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libicudata.so.56 -> libicudata.so.56.1
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5DBus.so.5 -> libQt5DBus.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5Widgets.so -> libQt5Widgets.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5Widgets.so.5.7 -> libQt5Widgets.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5DBus.so.5.7 -> libQt5DBus.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libicui18n.so.56 -> libicui18n.so.56.1
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5OpenGL.so.5 -> libQt5OpenGL.so.5.7.0
lrwxrwxrwx root/root         0 2017-12-21 22:48 ./usr/lib/libQt5Core.so.5 -> libQt5Core.so.5.7.0

Я думаю, что проблема может заключаться в том, что Ubuntu пытается найти QT5 в / usr / bin, прежде чем искать в / usr / lib / x86_64-linux-gnu. Итак, мой вопрос, как я могу добиться Ubuntu, используя версию QT5.5.1 по умолчанию снова? Могу ли я настроить его или мне всегда нужно добавлять LD_LIBRARY_PATH? Как я могу удалить библиотеку QT5.7? Просто удалите файлы, перечисленные выше?

Ответы [ 3 ]

0 голосов
/ 20 сентября 2018

У меня была похожая проблема, которая в конечном итоге была решена путем запуска «LD_LIBRARY_PATH = / usr / lib / x86_64-linux-gnu / qtcreator» вместо просто «qtcreator».Поэтому прежде всего спасибо за ответ

Некоторые шаги, которые я предпринял, чтобы глубже понять проблему:

  • Проверьте, какие библиотеки связаны с qtcreator, запустив "ldd -v / usr/local/Qt/5.7/gcc_64/lib/libQt5Widgets.so.5 "(абсолютный путь к libQt5Widgets.so.5, указанный в сообщении об ошибке" required by ")
  • Узнайте, какие версии установленыв системе, запустив "sudo find / -name libQt5Widgets.so *".Оказывается, у меня было установлено три версии (5.5.1, 5.7.1 и 5.11.1).В настоящее время qtcreator использует 5.7.1 (сравните результат ldd с результатом find)
  • Часто рекомендуется устанавливать qt5-default вместе с qtcreator (оба используют sudo apt install).Запуск «dpkg -s qt5-default» показывает, что он имеет версию 5.5.1.Поэтому вполне вероятно, что qtcreator хочет версии библиотеки 5.5.1 (даже если бы я ожидал, что она будет работать и с более высокими версиями).
  • Заставьте qtcreator использовать библиотеки 5.5.1, указав их путь черезпеременная окружения LD_LIBRARY_PATH, которая запускается "LD_LIBRARY_PATH = / usr / lib / x86_64-linux-gnu / qtcreator"
0 голосов
/ 16 июля 2019

Я только что исправил эту проблему. Попробуйте это:

gedit ~/.bashrc

export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH

Сохраните файл. Тогда,

source ~/.bashrc
0 голосов
/ 27 мая 2018

Qtcreator и rviz не работают, потому что им требуются библиотеки qt от /usr/lib/x86_64-linux-gnu, но вместо этого они связываются с /usr/lib/libQt* (вы можете проверить это дважды, используя ldd $(which qtcreator) и ldd $(which rviz)).Этот беспорядок действительно имеет непосредственное отношение к установке пакета вашей камеры.

Я вижу несколько способов решения этой проблемы:

1. Похоже, ваш компоновщик расставит приоритеты /usr/lib более /usr/lib/x86_64-linux-gnu.Проверьте свой LD_LIBRARY_PATH:

echo $LD_LIBRARY_PATH

и, если он содержит /usr/lib - попытайтесь избавиться от него (вы должны отследить, где вы обновляете свой LD_LIBRARY_PATH - в .bashrc или где-то ещееще? может быть /etc/ld.so.conf.d?)

2. Установите LD_LIBRARY_PATH в .bashrc, чтобы указать действительный qt dir.Не забудьте переопределить переменную, а скорее расширить ее (поместите это в конце ~/.bashrc):

export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/:$LD_LIBRARY_PATH

, затем перезагрузите .bashrc:

. ~/.bashrc

В вашемэксперименты, вы сделали переопределение при запуске qtcreator и rviz, так что только одно из этих двух приложений работало, зависит от того, какое LD_LIBRARY_PATH вы установили.

В качестве альтернативы, вы можете добавить /usr/lib/x86_64-linux-gnu/ path в /etc/ld.so.conf.d/ - просто создайте новый .conf файл с путем qt и перезагрузите все с помощью

sudo ldconfig

Используя этот метод вероятно сломает пакет вашей камеры, потому что теперь он будет связываться сlibs с вашего нового пути.

3. Временно переместите библиотеки Qt, поставляемые с пакетом камеры (/usr/lib/libQt*), в другое место и проверьте, работает ли spinview с другой версией qt, отличной от5,7.Если да - вы можете удалить библиотеки qt5.7 из /usr/lib/, так как они не нужны - здесь не требуется сложный процесс удаления.Вы всегда можете восстановить его с помощью камеры .deb в любом случае.

...