Ubuntu строит Qt 6.1 из исходников

Я только что перешел с Windows на Ubuntu, и жаль, что все не работает так легко, как в Windows. Я собрал Qt из исходников в Windows, и у меня не было проблем. В Ubuntu сборка прошла успешно, но я получаю сообщение «Qmake Not Executable», когда пытаюсь добавить qmake в версии Qt.

Я тестировал создание make-файлов с помощью qmake, и это сработало.

файл qmake: /home/usr/Qt/6.1.0/build/bin/qmake: ELF 64-разрядный исполняемый файл LSB, x86-64, версия 1 (GNU / Linux), с динамической компоновкой, интерпретатор / lib64 / ld -linux-x86-64.so.2, для GNU / Linux 3.2.0, без

qmake -v: QMake версии 3.1 Использование Qt версии 6.1.0 в /home/usr/Qt/6.1 .0 / build / lib

  • ОС: Ubuntu 20.04.2
  • Компилятор: gcc-11.1.0

Редактировать 1

Оказывается, проблема в GCC-11.1. Мне удалось собрать рабочий qmake с GCC-9.3. Кто-нибудь может объяснить, почему?

Edit 2

Наконец-то сегодня нашлось время протестировать компиляцию с Qt. В комплекте есть сообщение об ошибке: компилятор «Clang ++ 12» (x86-linux-generic-elf-64bit) не может создать код для версии Qt «Qt 6.1.0» (x86-linux-generic-elf-64bit )

Это помешательство, я построил эту штуку с лязгом. Если я поменяю компилятор на gcc, тогда я получу одобрение от комплекта, но тогда у меня будут всевозможные проблемы с компиляцией.

Было бы здорово, если бы кто-нибудь мог дать совет, как решить эти проблемы.

Я надеюсь, что можно запустить Qt 6 с новейшими компиляторами в Linux.

0
задан 6 June 2021 в 21:55

1 ответ

Ubuntu 20.04 LTS поставляет Qt 5.12, который является стабильным и функциональным.
Итак, сначала я должен отметить, что использование поставляемой с дистрибутивом версии Qt (и Gtk, WxWidgets и так далее) всегда лучше. Поступая таким образом, вы можете иметь некоторую гарантию переносимости вашего саморазвивающегося приложения на ту же версию Ubuntu. Пользователю нужно будет только установить в систему необходимые пакеты, связанные с Qtt.
Более того, будущее Qt 6.x в Debian и Ubuntu неясно.

Если вы действительно хотите продолжить компиляцию, используйте следующее решение. Включите репозитории исходного кода deb-src вручную или с помощью Software & Updates (software-properties-gtk), а затем выполните:

sudo apt-get build-dep qtbase5-dev libxcb
sudo apt-get install cmake ninja-build clang build-essential libb2-dev libzstd-dev \
libsystemd-dev libhunspell-dev libclang-10-dev libmng-dev \
libwebp-dev libdouble-conversion-dev libkrb5-dev libdirectfb-dev libts-dev \
libproxy-dev libsctp-dev libbrotli-dev

cd ~/Downloads
wget -c https://download.qt.io/official_releases/qt/6.1/6.1.0/single/qt-everywhere-src-6.1.0.tar.xz
tar -xf qt-everywhere-src-6.1.0.tar.xz

cd qt-everywhere-src-6.1.0
./configure
cmake --build . --parallel

Как только все собрано, Qt установлен. Вам НЕ следует запускать 'cmake --install . '
Обратите внимание, что эта сборка не может быть развернута на других машинах или устройствах.

Для конфигурирования и сборки других модулей Qt можно использовать следующий удобный скрипт:

~/Downloads/qt-everywhere-src-6.1.0/qtbase/bin/qt-configure-module
0
ответ дан 28 July 2021 в 11:33

Другие вопросы по тегам:

Похожие вопросы: