Andrei Yankovich
Andrei Yankovich24 травня 2021 р. 10:10

Випуск утиліти розгортання додатків C++/Qt та QML CQtDeployer v1.5

Випуск утиліти розгортання додатків C++/Qt та QML CQtDeployer v1.5.0

Логотип


Це перше велике оновлення у 2021 році. CQtDeployer 1.5 містить багато корисних покращень. Найбільшими покращеннями є додавання можливості упаковувати пакети deb та можливість використовувати власний шаблон упаковки для середовища установки qt.

Повний список усіх змін

CQtDeployer 1.5.0

Нові можливості

  • Додана нова тема установника qif "quasarDark".
  • Додана підтримка роботи з кастомним шаблоном для опції qif.
  • Додана підтримка пакетів debian.
  • Додана підтримка іконок цілей. Тепер опція icon працює із цілями, але не з пакетами.
  • Додана підтримка управління файлами перекладу користувача.
  • Додана підтримка розгортання файлів, що не виконуються. (опція extraData)
  • Додано змінні оточення для розгорнутих програм.
  • Додана підтримка створення пакетів deb.
  • Додана підтримка створення архівів zip.
  • Додана підтримка створення установника qif з використанням шаблону, що настроюється.
  • Додана команда для ініціалізації шаблонів qif та deb за замовчуванням (getDefaulttemplate)
  • Додана підтримка імпорту користувацьких скриптів запуску.
  • Додана підтримка хешів md5 пакетів.
  • Додана підтримка Qt6.1.

Виправлення

  • Виправлена ​​стабільність для опції deploySystem у Windows.
  • Виправлено докладний журнал.
  • Виправлено загальний журнал виведення.
  • Виправлені друкарські помилки в лозі.
  • Виправлено крос-розгортання під платформу ARM
  • Виправлено розгортання Qt6 qml
  • Виправлені команди PowerShell у Windows.
  • виправлення помилок та покращення.

Нові змінні оточення

  • CQT_RUN_FILE - Ця змінна містить шлях до сценарію виконання використовуваної програми.
  • CQT_PKG_ROOT – ця змінна містить шлях до кореня поточного пакета.

Нові параметри

  • zip - створити ZIP-архів для програми, що розгортається
  • deb - Створити пакет deb для програми, що розгортається
  • homepage - Встановлює URL-адресу домашньої сторінки для пакета
  • noQt – ігнорує помилку ініціалізації qmake. Використовуйте тільки в тому випадку, якщо ваша програма не використовує фреймворк qt
  • allowEmptyPackages - дозволяє настроювати порожні пакети.
  • getDefaultTemplate - Виймає шаблони deb або qif за промовчанням.
  • tr - Додає qm файли до папки перекладів.
  • extraData - додає додаткові файли чи каталоги як ціль. Вибраний каталог буде скопійовано до папки extraDataOut із збереженням власної структури.
  • extraDataOut - Встановлює шлях до каталогу із додатковими файлами даних.
  • prefix - Встановлює префікс для пакету щодо цільового каталогу
  • homePage - Встановлює URL-адресу домашньої сторінки для пакета
  • binPrefix – встановлює префікс для опції bin.
  • noHashSum – відключає хеші кампутних пакетів

Застарілі та віддалені параметри

  • deploySystem-with-libc - замість цього параметра використовуйте параметр deploySystem.
  • allQmlDependes - замість цього параметра використовуйте параметр qmlDir.

Детальний розбір найцікавіших змін.

Пакети Debian

Ця функція дуже зручна, якщо ви хочете створити серверну програму.
Наприклад, мені потрібно створити простий сервер для гри.
Мої кроки:
зібрати мою програму в режимі релізу.
запустіть cqtdeployer з опцією deb.

cqtdeployer -bin mySimpleServer deb -qmake ~/Qt/5.15.2/gcc_64/bin/qmake

SimpleServer залежить тільки від qt, тому мені було достатньо вказати шлях до qmake для мого додатка.

Це все!!!. І я отримую робочий пакет deb.
За промовчанням CQtDeployer створює незалежні пакети debian.

Поштові архіви

Ця функція дозволяє стиснути пакети дистрибутива в zip-архів.

приклад:

cqtdeployer -bin mySimpleServer zip -qmake ~/Qt/5.15.2/gcc_64/bin/qmake

Користувальницький Шаблон для QIF

Починаючи з Версії CQtDeployer 1.5, ви можете використовувати свій власний шаблон установника. Для цього ви повинні передати в qif шлях до вашого шаблону.

cqtdeployer ... -qif /path/to/my/custom/qif/template

Шаблон

Шаблон qif повинен містити 2 папки:
пакети
конфігурація

Увага

Назва пакетів у папці packages повинні співпадати з назвою пакетів під час розгортання.
Наприклад:

"targetPackage": [
    [
        "myCustomInstaller",
        "tar1"
    ]
],
.
├── config
│   ├── config.xml
│   └── style.qss
└── packages
    └── myCustomInstaller
        └── meta
            ├── installscript.qs
            └── package.xml

4 directories, 4 files

Якщо імена папок не співпадають з іменами пакетів, CQtDeployer буде використовувати стандартний пакет для QIF.

Якщо у вас є лише один пакет, ви можете використовувати опцію name для встановлення імені програми.

cqtdeployer ... -qif /path/to/my/custom/qif/template -name myCustomInstaller

Не забудьте перейменувати папку вашого пакета на ім'я пакета з опції імені.

.
├── config
│   ├── config.xml
│   └── style.qss
└── packages
    └── myCustomInstaller  << "This is folder of the your package"
        └── meta
            ├── installscript.qs
            └── package.xml

4 directories, 4 files

Рекомендуємо хостинг TIMEWEB
Рекомендуємо хостинг TIMEWEB
Стабільний хостинг, на якому розміщується соціальна мережа EVILEG. Для проектів на Django радимо VDS хостинг.

Вам це подобається? Поділіться в соціальних мережах!

e
  • 21 серпня 2021 р. 15:16
  • (відредаговано)

Привет.
Подскажите пожалуйста решения двух проблем:
1. Не могу создать установщик с помощью флага qif. просиходит ошибка, но текста ошибки нет. поэтому не знаю куда копать. текст что упаковка не удалась я гуглил, находил только сами исходники деплоера.

"c:\Program Files (x86)\CQtDeployer\1.5\cqtdeployer.bat" -bin test.exe -qmake "c:\Qt\Qt5.6.3\5.6.3\mingw49_32\bin\qmake.exe" qif

ошибка на скрине


  1. В описании новшевств есть флаг tr, но он без параметров не работает. Я предполагал что он скопирует все имеющиеся переводы, но их нужно перечислись при использовании -tr.
    Это так и должно быть, или я что-то делаю не так, и можно сделать так, чтобы деплойер сам забирал все файлы перевода без перечисления?
    (и еще баг форума чтоли, я пишу этот пункт под номером "2.", но после отправки он превращается в "1.")
Andrei Yankovich
  • 27 серпня 2021 р. 07:44
  • (відредаговано)

На данный момент Qt Installer Framework не поддерживает Windows 7
смотрите баг #2224

e
  • 28 серпня 2021 р. 15:49

Благодарю.
Действительно, подменил файлы от версии 4.0, и все заработало)

Коментарі

Only authorized users can post comments.
Please, Log in or Sign up
m
  • molni99
  • 26 жовтня 2024 р. 01:37

C++ - Тест 004. Указатели, Массивы и Циклы

  • Результат:80бали,
  • Рейтинг балів4
m
  • molni99
  • 26 жовтня 2024 р. 01:29

C++ - Тест 004. Указатели, Массивы и Циклы

  • Результат:20бали,
  • Рейтинг балів-10

C++ - Тест 003. Условия и циклы

  • Результат:42бали,
  • Рейтинг балів-8
Останні коментарі
A
ALO1ZE19 жовтня 2024 р. 08:19
Читалка файлів fb3 на Qt Creator Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
ИМ
Игорь Максимов05 жовтня 2024 р. 07:51
Django - Урок 064. Як написати розширення для Python Markdown Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
d
dblas505 липня 2024 р. 11:02
QML - Урок 016. База даних SQLite та робота з нею в QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
k
kmssr08 лютого 2024 р. 18:43
Qt Linux - Урок 001. Автозапуск програми Qt під Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Анатолий Кононенко05 лютого 2024 р. 01:50
Qt WinAPI - Урок 007. Робота з ICMP Ping в Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
Тепер обговоріть на форумі
jd
jasmine disouza28 жовтня 2024 р. 04:58
GeForce Now India: Unlocking the Future of Cloud Gaming GeForce Now India has a major impact on the gaming scene by introducing NVIDIA's cloud gaming service to Indian gamers. GeForce Now India lets you stream top-notch PC games on any device, from b…
9
9Anonim25 жовтня 2024 р. 09:10
Машина тьюринга // Начальное состояние 0 0, ,<,1 // Переход в состояние 1 при пустом символе 0,0,>,0 // Остаемся в состоянии 0, двигаясь вправо при встрече 0 0,1,>…
J
JacobFib17 жовтня 2024 р. 03:27
добавить qlineseries в функции Пользователь может получить любые разъяснения по интересующим вопросам, касающимся обработки его персональных данных, обратившись к Оператору с помощью электронной почты https://topdecorpro.ru…
ИМ
Игорь Максимов03 жовтня 2024 р. 04:05
Реализация навигации по разделам Спасибо Евгений!
JW
Jhon Wick01 жовтня 2024 р. 15:52
Indian Food Restaurant In Columbus OH| Layla’s Kitchen Indian Restaurant If you're looking for a truly authentic https://www.laylaskitchenrestaurantohio.com/ , Layla’s Kitchen Indian Restaurant is your go-to destination. Located at 6152 Cleveland Ave, Colu…

Слідкуйте за нами в соціальних мережах