Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Qt6 moving towards cmake

Aberta
#3,964 3 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 5 dias

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
5/5
Tempo estimado
Mais de uma semana
Facilidade para iniciantes
25/100
Tipo de issue
Refatoração
Clareza
Precisa de esclarecimento
Status de atividade
Ativa
Stack de tecnologia
cmake
Domínio
build-system

Direção de pesquisa

Start with the Jamulus.pro project file and the Qt-provided qmake-to-cmake migration tool. Review the generated build configuration against each target platform, including Qt6 and legacy builds, and investigate the Android multi-ABI limitations described in the issue. This issue is complete only when the project agrees on a migration plan and the affected build targets are covered.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

feature request

What is the current behaviour and why should it be changed?

Currently Jamulus is built predominantly with qmake and a Jamulus.pro project file specifying the cross-platform build specification.

Qt6 is moving away from the use of qmake and project files. For example, it is no longer possible to use qmake and androidinstallqt to produce an Android multi-ABI APK/AAB.

The recommended tooling is based around cmake and there is a project-provided migration tool to move from qmake to cmake.

However, it comes with a number of provisos and the output would need to be reviewed carefully for each target platform to ensure that Jamulus remains buildable on those platforms.

We also need to investigate the use of cmake for the legacy builds.

Describe possible approaches

  • Drop Qt
    One option is to take this as the point at which we decide that Qt is no longer the right cross-platform development environment for Jamulus.
    The obvious downside is there is a very large amount of work involved in porting to any other platform - primarily the UI but also the inter-component communication, networking and audio.
  • Halt updates to Qt, supply only Qt5 builds for Android and do not look to publish Jamulus on Play Store
    Clearly this saves a lot of work. However, it's likely to mean that support for Android is dropped in the medium term.

Given there is no simple solution, the least bad solution is probably to take the hit on Qt6:

  • Split into Qt5 (legacy) and Qt6 (modern) work streams
  • Migrate the Qt6 builds to cmake
  • Pin the legacy builds to "last known working versions" of all dependencies

Has this feature been discussed and generally agreed?

No. We need to come up with an agreed plan.

Linguagem predominante
C
Estrelas
1.1k
Forks
248
Merge médio
7d 14h
PRs com merge (30d)
6

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de jamulussoftware/jamulus

Todas as issues de jamulussoftware/jamulus

Issues semelhantes

Mais issues de C

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.