Skip to content

This project is used to deploy applications written using QML, qt or other С / С++ frameworks.

License

Notifications You must be signed in to change notification settings

en666ki/CQtDeployer

 
 

Repository files navigation

CQtDeployer cqtdeployer

cqtdeployer

Logo


What is CQtDeployer

The CQtDeployer is application for extract all depends library of executable and create launch script for your application.

Key differences of this program:

  • Performance: this program deploys the application several times faster (up to 10 seconds)
  • Flexibility: this application's got flags that help you to configure the deployment for your or your project's needs
  • Crossdeploy: this application's support windows and linux distrebutives, This means that you can use it not only to deploy a project for your platform, but also to deploy a project on Linux for Windows and vice versa.
  • Fast create installers : Upon completion of the deployment, you will receive a self-contained installer of your distribution.

Supported platforms:

Support processors architectures:

  • x86
  • x86-64
  • ARM
  • ARM64

How to use

Example: cqtdeployer <-bin [params]> [options]

See list of all options here

Example: cqtdeployer -bin myApp -qmlDir ~/MyAppProject/qml -qmake ~/Qt/5.12.4/gcc_64/bin/qmake clear

More examples

Project structure after deploy:

 #linux
 cqtdeployer -bin Guitar  
 
 #windows
 cqtdeployer -bin Guitar.exe -qmake /path/to/qmake.exe

Project installer after deploy with the qif option.

 #linux
 cqtdeployer -bin Application qif
 
 #windows
 cqtdeployer -bin Application.exe -qmake /path/to/qmake.exe qif

Project installer after deploy with the qif and qifStyle option.

 #linux
 cqtdeployer -bin Application qif -qifStyle quasar
 
 #windows
 cqtdeployer -bin Application.exe -qmake /path/to/qmake.exe qif -qifStyle quasar

 #linux
 cqtdeployer -bin Application qif -qifStyle path/to/myStyle.css
 
 #windows
 cqtdeployer -bin Application.exe -qmake /path/to/qmake.exe qif -qifStyle path/to/myStyle.css

Build for Linux

  • install qt and qt QtInstallFrameWork from qt installer
  • git clone https://github.com/QuasarApp/CQtDeployer.git
  • cd CQtDeployer
  • git submodule update --init --recursive
  • qmake -r
    • Here you must definitely call the qmake that was loaded from the 1st item.
    • Example: ~/Qt/5.14.0/gcc_64/bin/qmake -r
  • make -j$(nproc)
  • make deploy
    • #this command requires installed cqtdeployer
    • If you are building cqtdeployer using qt from your OS repository, use only the cqtdeployer installed from the github installer. The fact is that the snap package does not have access to system libraryes.
  • ./Distro/CQtDeployerInstaller.run

Build for Windows (CMD)

  • install qt and qt QtInstallFrameWork from qt installer
  • git clone https://github.com/QuasarApp/CQtDeployer.git
  • cd CQtDeployer
  • git submodule update --init --recursive
  • SET PATH=C:/Qt/Tools/mingw730_64/bin;%PATH%
    • It is important to set up the qt environment.
  • qmake.exe -r
    • Here you must definitely call the qmake that was loaded from the 1st item.
    • Example: C:/Qt/5.14.0/mingw73_64/bin/qmake.exe -r
  • migw32-make -j8
  • migw32-make deploy
  • ./Distro/CQtDeployerInstaller.exe

Install

You can download the latest version of the application here.

Snap

Get it from the Snap Store

Features of the snap version

The snap package does not have access to system libraries. This means deploySystem options will not work. This also means that if you manually specify libDir or extraLib, then libraries that are not in home will not be found. If these restrictions bother you, use the Installer classic version of the application.

If you are using the snap version of the application. Enable all permissions for cqtdeployer. this can be done in the snap-store Or starting with ubuntu 20.04 in the ubuntu application settings manager.

Projects using CQtDeployer:

Donate

If you want to support the project,you can donate into our bitcoin wallet.

Bitcoin address - 1NJNbDKmezcUcHRfzpBeq2fHeG21oEKX8Q

Thanks




CQtDeployer - это приложение преднознаена для извлечения всех зависимых библиотек исполняемого файла и создания сценария запуска для вашего приложения.

Основные отличия этой программы:

  • Производительность - эта программа развертывает приложение в несколько раз быстрее (до 10 секунд)
  • Гибкость - это приложение имеет флаги, которые помогут вам настроить деплоинг под ваши нужды и нужды вашего проекта
  • Crossdeploy: приложение поддерживает Windows и дистрибутивы Linux, это означает, что вы можете использовать его не только для развертывания проекта для вашей платформы, но и для развертывания проекта в Linux для Windows и наоборот.
  • Быстрое создание установщиков. По завершении развертывания вы получите автономный установщик вашего дистрибутива.

Поддерживаемые платформы:

Поддержка архитектур процессоров:

  • x86
  • x86-64
  • ARM
  • ARM64

Как использовать

пример : cqtdeployer <-bin [params]> [options]

Смотрите список всех опций здесь

пример: cqtdeployer -bin myApp -qmlDir ~/MyAppProject/qml -qmake ~/Qt/5.12.4/gcc_64/bin/qmake clear

Еще примеры

Стуктура проекта после развертывания:

 #linux
 cqtdeployer -bin Guitar  
 
 #windows
 cqtdeployer -bin Guitar.exe -qmake /path/to/qmake.exe

Установщик проекта после использования опции qif.

 #linux
 cqtdeployer -bin Application qif
 
 #windows
 cqtdeployer -bin Application.exe -qmake /path/to/qmake.exe qif

Установщик проекта после использования опции qif c пользовательским стилем.

 #linux
 cqtdeployer -bin Application qif -qifStyle quasar
 
 #windows
 cqtdeployer -bin Application.exe -qmake /path/to/qmake.exe qif -qifStyle quasar

 #linux
 cqtdeployer -bin Application qif -qifStyle path/to/myStyle.css
 
 #windows
 cqtdeployer -bin Application.exe -qmake /path/to/qmake.exe qif -qifStyle path/to/myStyle.css

Build для Linux

  • установите qt и qt QtInstallFrameWork из Установщик qt
  • git clone https://github.com/QuasarApp/CQtDeployer.git
  • cd CQtDeployer
  • git submodule update --init --recursive
  • qmake -r
    • Здесь нужно обязательно вызвать тот qmake, который был загружен из 1го пункта.
    • Пример: ~/Qt/5.14.0/gcc_64/bin/qmake -r
  • make -j$(nproc)
  • make deploy
    • эта команда требует установленный cqtdeployer
    • Если вы собираете cqtdeployer, используя qt из своего репозитория ОС, используйте только cqtdeployer, установленный из установщика github. Дело в том, что пакет моментальных снимков не имеет доступа к системным библиотекам.
  • ./Distro/CQtDeployerInstaller.run

Build для Windows (CMD)

  • установите qt и qt QtInstallFrameWork из Установщик qt
  • git clone https://github.com/QuasarApp/CQtDeployer.git
  • cd CQtDeployer
  • git submodule update --init --recursive
  • SET PATH=C:/Qt/Tools/mingw730_64/bin;%PATH%
    • Здесь важно настроить окружение qt.
  • qmake.exe -r
    • Здесь нужно обязательно вызвать тот qmake, который был загружен из 1го пункта.
    • Пример: C:/Qt/5.14.0/mingw73_64/bin/qmake.exe -r
  • migw32-make -j8
  • migw32-make deploy
    • эта команда требует установленный cqtdeployer
  • ./Distro/CQtDeployerInstaller.exe

Snap

Загрузите из Snap Store

Особенности snap версии

В snap пакет не имеет доступ к системным библиотекам. Это значит что опции deploySystem не будут работать. Так же это значит что нсли вы в ручную укажите libDir или extraLib, то библиотеки находящиеся не в home не будут найдены. Если вам мешают эти ограничения используйте Установщик класической версии приложения.

Если вы используете snap версию приложения. Включите все разрешения для cqtdeployer. это можно сделать в snap-store Или начиная с ubuntu 20.04 в менеджере натроек приложений ubuntu.

Установить

Вы можете загрузить последнюю версию приложения здесь.

Проекты использующие CQtDeployer :

Пожертвовать

Если вы хотите помочь проекту, то вы можете пожертвовать небольшую сумму на наш биткойн-кошелек.

Биткойн-адрес - 1NJNbDKmezcUcHRfzpBeq2fHeG21oEKX8Q

Благодарность

  • Большое спасибо Trail of Bits за их библиотеку pe-parser. Все работает отлично.

About

This project is used to deploy applications written using QML, qt or other С / С++ frameworks.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 90.4%
  • QML 6.1%
  • QMake 1.9%
  • JavaScript 0.9%
  • CSS 0.4%
  • Shell 0.1%
  • Other 0.2%