Я новичок в Qt, и мои знания очень неоднородны. Я пытаюсь создать проект Qt Creator со статически построенной версией библиотек Qt, которые я только что создал. После 1-2 дней проб и ошибок статически построенные библиотеки Qt собираются нормально, но, к сожалению, мои проекты не строятся с ними, потому что они используют некоторые модули, которые Qt Creator, похоже, не может найти в статически построенных библиотеках Qt. Какой шаг я пропустил? Мои проекты успешно строятся с использованием стандартных динамически подключаемых библиотек Qt.
Статически построенные библиотеки Qt были построены на Ubuntu 19.10 с версией 5.12.4 исходного кода Qt. Это параметры, которые я выбрал при настройке сборки…
./configure -static -release -prefix “./512-static”
Насколько мне известно, я загрузил все необходимые зависимости, используя, среди прочего, вызов…
sudo apt-get build-dep qt5-default
В Qt Creator я сослался на статически построенные библиотеки в проектах с использованием новой версии и создал клоны своего набора, которые я модифицировал для использования этих новых версий. Проекты хорошо собираются со старыми наборами (с использованием библиотек Dynami c Qt) и не собираются с новыми наборами (с использованием библиотек stati c).
Проекты Qt Creator терпят неудачу, потому что они не могут найти пару модулей: 'Qt Ui Tools' и 'Qt Designer'.
Один проект имеет это в профессиональном файле…
greaterThan(QT_MAJOR_VERSION, 4) {
QT += designer
} else {
CONFIG += designer
}
Другой файл проекта имеет это в его профессиональном файле…
QT += core gui uitools
В качестве теста я удалил эти строки из файла проекта и попытался собрать. Я получаю ошибки компиляции, когда соответствующие заголовки не найдены. По-видимому, это показывает, что эти модули не включены в статически построенные библиотеки Qt.
Какие шаги мне не хватает? В идеале я бы хотел, чтобы мои проекты компилировались в один исполняемый файл, но в противном случае небольшое количество двоичных файлов будет нормально.