2016-02-27 4 views
0

это exist answer не может исправить мой вопросЭто приложение не удалось запустить, поскольку не удалось найти или загрузить Qt платформы плагин «XCB»

В кварт official example, я использую следующие CMakeLists.txt

SET(CMAKE_PREFIX_PATH /media/roroco/disk750/Downloads/qtbase) 
set(CMAKE_INCLUDE_CURRENT_DIR ON) 
set(CMAKE_AUTOMOC ON) 
set(CMAKE_AUTORCC ON) 
find_package(Qt5Widgets) 
find_library(xcb NAMES qxcb PATHS /media/roroco/disk750/Downloads/qtbase/plugins/platforms) 
add_executable(systray main.cpp window.cpp systray.qrc) 
target_link_libraries(systray Qt5::Widgets ${xcb}) 

и я получаю

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

Как добавить плагин «xcb» в cmake?

обновление

Я уверен, что find_library(xcb найти Lib "/media/roroco/disk750/Downloads/qtbase/plugins/platforms/libqxcb.so".

+0

Если вы на Ubuntu или Debian, плагин xcb будет '/ usr/lib/x86_64-linux-gnu/qt5/plugins/platform/libqxcb.so'. Он установлен пакетом 'libqt5gui5', поэтому он должен быть там. – Velkan

ответ

0

когда я ldd /media/roroco/disk750/Downloads/qtbase/plugins/platforms/libqxcb.so, есть некоторые Deps шоу «не найдено», так что я думаю, причина это то, что

временный секретарь решение, что я нашел, это добавить

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${qt_rt}/lib 
export QT_QPA_PLATFORM_PLUGIN_PATH=${qt_rt}/plugins 
export QT_QPA_FONTDIR=${qt_rt}/lib/fonts 

в ~/.bashrc и source ~/.bashrc, заново откройте редактор и повторите попытку.

, но вот вопрос, когда я использую set(ENV{LD_LIBRARY_PATH} path/to/qtbase/lib) в CMakeLists.txt вместо export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:path/to/qtbase/lib в ~/.bashrc, он не работает, он по-прежнему поднимать ошибку, если кто-то знает причину, пожалуйста, создайте новый ответ на этот вопрос , Я думаю, что изменение env в cmake лучше всего

+0

Не размещайте дополнительную информацию в качестве ответа. Лучше отредактируйте или прокомментируйте сообщение вопроса. – Velkan

Смежные вопросы

 Смежные вопросы