×

Qt5.4 в Linux

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

Всем привет. Я больше работаю в Windows, но понадобилось с Qt в Linux:
Я взял вот эту версию
qt-opensource-linux-x86-5.4.0.run (поставил птичку только на Qt5.4 и Creator)
Поставил в
/home/Qt5 (предлагается по дефолту)
Версия Cmake 2.8.12
и получаю
viktor@virt-mint64 ~/Work/xxx/build $ cmake ..
CMake Warning at /usr/lib/x86_64-linux-gnu/cmake/Qt5/Qt5Config.cmake:26 (find_package):
Could not find a package configuration file provided by “Qt5SerialPort”
with any of the following names:

Qt5SerialPortConfig.cmake
qt5serialport-config.cmake
...

viktor@virt-mint64 ~/Work/xxx/build $ cmake .. -DCMAKE_PREFIX_PATH=/home/Qt5
CMake Warning at /usr/lib/x86_64-linux-gnu/cmake/Qt5/Qt5Config.cmake:26 (find_package):
Could not find a package configuration file provided by “Qt5SerialPort”
with any of the following names:

Qt5SerialPortConfig.cmake
qt5serialport-config.cmake

Add the installation prefix of “Qt5SerialPort” to CMAKE_PREFIX_PATH or set
“Qt5SerialPort_DIR” to a directory containing one of the above files. If
“Qt5SerialPort” provides a separate development package or SDK, be sure it
has been installed.
...

В Cmake подключаю так:
SET(QT_MODULES Widgets Core SerialPort)
find_package(Qt5 COMPONENTS ${QT_MODULES})

Как подключить и поставить Qt5 правильно в Linux.

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Айййй, всё это дурня :)

Пиши в ЛС, помогу ;)

P.S. не QT, а Qt, если речь идет про Qt Framework, а не про QuickTime :)
Читается как «Кьют» (из истории: авторам нравится буква «Q» — «Quite Q» )

А вы знаете как правильно CMakeLists настроить для работы с QT? Если честно в инете вообще все что предлагают не пашет((

Вот это должно вам помочь: stackoverflow.com/...863098_28247137 . Если коротко, то попробуйте вот так:


cmake -DCMAKE_PREFIX_PATH=/home/Qt5/5.4/gcc_64

P.S. В Linux лучше производить установки не в `/home`, а в `/opt`.

qt-opensource-linux-x86-5.4.0.run (поставил птичку только на Qt5.4 и Creator)
Не уверен, но обратите внимание, что qtserialport находится в Qt->Qt5.4->Source Components->Add-Ons. Попробуйте переустановить, как вариант...

У вас что-нибудь тут есть?


ls -l /home/Qt5/5.4/gcc_64/include/QtSerialPort

Проблема только с QtSerialPort? Минимальное Qt5 приложение через CMake пробовали собирать?

Из этого

Да, нашел его уже в репозитории.
И этого
Поставил в
/home/Qt5 (предлагается по дефолту)
Нужно что-нибудь одно выбрать.

обратите внимание не

-DCMAKE_PREFIX_PATH=/home/Qt5
а
-DCMAKE_PREFIX_PATH=/home/Qt5/5.4/gcc_64

Ну я бы предложил, просто /opt/qt, т.к. дальше уже сам Qt ставит версию.

для разработки лучше использовать Федору, там таких проблем с актуальными версиями библиотек нету, и да гораздо меньше проблем когда что то поставить ручками, пакетный менеджер разруливает зависимости и на уровне файлов а не пакетов.

Бред.
Было бы легче, если бы я написал использовать rolling release дистрибутивы?

Тогда уже лучше Gentoo или Slackware, там гораздо быстрее появляется ;)

В чем проблема поставить через менеджер пакетов?

Если интересует именно последняя версия, то стоит тогда устанавливать с git: qt-project.org/...g_Qt_5_from_Git.

Но крайне рекомкндуется ставить софт только через менеджеры пакетов, в частности вот какой-то репозиторий launchpad.net/...opt-qt54-trusty

в линуксах крайне не рекомендуется ставить что либо ручками (за обьяснениями в гугл), следует искать репозитории с которых можно поставить .

В частности если крайне интересуют последние релизы. Лучше работать в arch linux или debian sid.

А вот и ответ на вопрос «почему ставить только пакетами?»)

Не в линуксах, а в некоторых дистрибутивах линукс. В том же арче, генте и слаке все отлично руками ставится.

Но в случае с deb/rpm-based дистрибутивами — да, стоит сначала опакетить, а потом ставить. Если лень пакетить — искать репозитории (для убунты практически все есть на launchpad).

и как, удобно удалять с арча пакеты, установленные руками? :)

Это если тут — wiki.archlinux.org/...User_Repository ничего не нашел, в чем я сильно сомневаюсь.

Дык вопрос был в отрицании потребности в пакетной системе (и использовать лишь исходники для установки), а ABS все же создает подобие пакета (pkg.tar.gz), которое уже и устанавливает. С таким же успехом можно использовать builddep (вроде) для deb-систем, чтобы создать пакет из исходников и установить его как полагается.

P.S. AUR, внезапно, пакетный репозиторий

Не пакетный репозиторий, а репозиторий сорцов с инструкциями по их (полуавтоматической) установке.

Как сейчас помню
yaourt -S pycharm
Осталось нажать только Y.

Не думаю, что это можно назвать настолько уж полуавтоматической установкой.)

А полуавтоматическая установка — это инструкции по сборке тарболла из сорцов (PKGBUILD) и последующая передача этого тарболла pacman’у для установки.

yaourt -S pycharm

А теперь почитайте что такое yaourt и какое отношение он имеет к самому AUR. Подскажу — это просто сторонняя утилита наряду с десятком таких же для упрощения вышеописанной процедуры.

Підписатись на коментарі