GithubHelp home page GithubHelp logo

quasarapp / cqtdeployer Goto Github PK

View Code? Open in Web Editor NEW
535.0 27.0 86.0 14.26 MB

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

Home Page: https://quasarapp.ddns.net:3031/docs/QuasarApp/CQtDeployer/latest/

License: GNU Lesser General Public License v3.0

QMake 0.07% C++ 89.69% QML 6.65% JavaScript 0.50% CSS 0.23% Shell 0.48% Python 0.11% CMake 1.38% Qt Script 0.43% HTML 0.28% C 0.09% Batchfile 0.08%
qt linux deploy qt5 deployment packaging snap console-qtdeployer cqtdeployer snap-store development qmake linux-windows windows qt-qtinstallframework qt-deploy qt-installer cpp c qt6

cqtdeployer's Introduction

CQtDeployer

cqtdeployer cqtdeployer

Logo


Support the project

image

We have a cqtdeployer extended support subscription on the Patrion service.

  • We'll help you solve your deployment issues personality.
  • All your tasks needed to solve your issues will have top priority.

Also, if you just want to support the project, you can subscribe to the general subscription plan on patrion

If you can't use Patreon, you can send bitcoin to support us and our work. If you want to get support for bitcoin payment, write to me in telegramm

bitcoin address

image

bc1q3jnx7pleh7rxg6nm6navvuwwpd9znxvd4lye62

What is CQtDeployer

CQtDeployer helps you to extract all libraries your executable depends on and to create a 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 has flags that help you to configure the deployment for your or your project's needs
  • Cross-deployment: this application supports Windows and Linux distributions. This means that you can deploy a project not only for the host platform, but also deploy a project for Windows target on Linux host and vice versa.
  • Fast installers creation: Once the deployment is complete, you will receive a standalone installer for your distribution.

Supported platforms:

Supported processors architectures:

  • x86
  • x86-64
  • ARM
  • ARM64

How to use

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

See the list of all options here

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

More examples

Deployed project structure:

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

Project installer after deployment with the qif option.

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

Project installer after deployment with the qif and qifStyle options.

 #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 and install

See building and installation instructions on wiki page

Projects using CQtDeployer:

  • QAmigo - Qt cross-platform serial port socket assistant for visualizing data.
  • QtSecret - Simple encryption library supporting RSA and AES algorithms.
  • Hanoi-Towers - Hanoi Towers Game
  • distbuilder - Distribution Builder
  • Manager_v2 - Qt Quick Controls 2 - Linux Manager Desktop Application
  • IDE65XX - IDE 65XX is one of the open source IDE options available for developers working with Kick Assembler.
  • Tanks - 2D game written in C++ & Qt for Windows, Linux and Android
  • stegano - Bit-level Image Manipulation Software with Qt Framework - Steganography Pet Project
  • Online_Board - This is a board that you can share with others.

Check out our documentation for more information: here


Thanks


cqtdeployer's People

Contributors

ahndee avatar alinabakovets avatar endrii avatar hadugen avatar kartaris avatar kickoman avatar marcelpetrick avatar nllk avatar oleg-designer avatar pzhlkj6612 avatar rgriebl avatar robosina avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cqtdeployer's Issues

QML imports

add own qml import parser like pe or elf parsers

save last cmd options

  • Invent and add a mechanism that would allow to simplify the call to cqtdeployer.
  • add support not deploy commands (for example clear)

Not work from snap in removable dirs

Describe the bug
Not work from snap in removable dirs
To Reproduce
Steps to reproduce the behavior:

  1. Go to remote dir
  2. run cqtdeployer with project params
  3. See error

qml

исправить извлечение библиотек qml

Not work from snap in folder with russian name

Describe the bug
Not work from snap in folder with russian name

To Reproduce
Steps to reproduce the behavior:

  1. Go to project dir
  2. run cqtdeployer -bin target -targetDir russianDir
  3. See error

qt pool

add support of qt build system.
example :
add flag OwnQt [qt version tag]: this flag needed for building qt from source

Cmake

Add support of cmake build system

AppRun

скрипт должен передовать параметры приложению

fix clear

Need to do so that cleaning would delete only the files copied last time in the selected folder and not the folder

lib priority

Describe the bug
app selected lib with low priority

Deploy with system libc do not worked

Describe the bug
Deploy with system libs do not worked,

Desktop (please complete the following information):

  • OS: [e.g. Ubuntu]
  • Version [e.g. 18.04]

поиск библиотек

добавить возможность искать зависимости из кастомных каталогов

shared build

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:
1 start deploy (shared release)

Expected behavior
not deployed qtcore lib

Добавить в snapstore

добавить консольную версию в снапстор, использовать для этого classic-support

Project ideas list

План проекта CQtDeployer.

  • Ознакомиться и исправить текущую документацию по проекту;
  • Ознакомиться с текущей вики;
  • Написать или обновить текущую статью, описывающую полную работу утилиты;
  • Написать или обновить текущую статью, описывающую процесс сборки и установки утилиты под все доступные платформы;
  • Написать или обновить существующий гайд по использованию утилиты;
  • Подготовить живые примеры работы утилиты;
  • Перевести все написанные статьи на все возможные языки, (языки обсуждать с ментором проекта);
  • Написать сайт проекту, используя по возможности :
    1. backend : nodejs, mysql
    2. frontend : (Обсуждать с ментором проекта),
      Основные возможности сайта:
  • Должны быть написаны новостной и модуль размещения релизов.
    1. Новостной модуль позволяет динамически создавать и изменять существующие новости проекта;
    2. Модуль размещения основных релизов - то же что и новостной, только с привязкой к релизам gitHub;
    3. Поддержка авторизации пользователей, так же возможность добавлять материал на сайт динамически для авторизованных пользователей, имеющих необходимый уровень доступа;
  • Разместить все написанные статьи документации на разработанном сайте.

Если написание backend не представляется возможным.

  • Подготовить сайт с использованием технологий gh-pages и разместить там все написанную документацию с поддержкой нескольких языков.

Project plan CQtDeployer.

  • Read and correct current project documentation;
  • Read the current wiki page;
  • Write or update the current article describing the entire functioning of the utility;
  • Write or update the current article describing the process of assembling and installing the utility for all available platforms;
  • Write or update an existing guide of using the utility;
  • Prepare living examples of the utility functioning;
  • Translate the existing articles into all possible languages, (discuss the list of languages ​​with your project mentors).
  • Create a website for the project using if it’s possible:
    1. backend: nodejs, mysql
    2. frontend: (Discuss with project mentor)

Main features of the website:

  • News module and release placement module should be created.
    1. The news module allows you to create and modify existing project news dynamically;
    2. The module of placement of major releases is the same as news module. The only difference is that it’s linked to gitHub releases;
    3. Support the authorization of users, as well as the ability to post data on the site dynamically for authorized users who’ve got the necessary level of access.
  • Post all the articles of the documentation on the developed website.

If backend development is not possible.

  • Prepare a website using gh-pages technology and post all written documentation with the support of several languages.

Add support of output paths

Add support of output dir of deploy files.

Add support:

  1. qmlOut flag - for qml files
  2. libOut flag - for so and dll files
  3. trOut flag - for transtation files
  4. pluginOut flag - for plugins

Rename app to CQtdeployer

Need to rename the application and the repository to cqtdeployer as this is a more easy to remember name.

Add auto tests

  • It is necessary to add tests to the program, because the number of errors is too large, at the moment I can not collect my applications because of them.

soft links

Describe the bug
deployer copied all links like files

To Reproduce
Steps to reproduce the behavior:

  1. run cqtdeployer with deploy so lib (1 lib and 3 links to lib )

Segmentation fault

В задеплоехных проектах с помощью снапчате версии ошибка сигментации

clear on windows

нужно исправить ощибку с отчисткой старых файлов

add support strip

The application must perform a strip for all libraries in the project

wrong log

Describe the bug
when deployement, application print wrong log

file with sufix  "qml"  not supported!

To Reproduce
deploy qml app

Screenshots

file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!
file with sufix  "qml"  not supported!

Desktop (please complete the following information):

  • OS: [e.g. Ubuntu]
  • Version [e.g. 18.04]
  • app version 1.1.2

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.