Como criar um GUI em c++ no linux?

Como crio um programa com uma janela própria que pode ser utilizado em outros computadores em C++?

1 Curtida

Os dois toolkits que pode são usados no Linux são o GTKMM (criar aplicativos estilo Gnome) e o Qt (aplicativos estilo KDE).

Aqui tem um “olá mundo” com o GTKmm: GTK/Development - ArchWiki

3 Curtidas

A melhor opção, ao meu ver, é utilizar o Qt framework. Falta de conteúdo na internet não é o que falta. Pelo que vi no YouTube, o canal CFBCursos possui um curso de C++ e outro apenas de Qt e C++.

2 Curtidas

Qt se você quiser dar pouca manutenção no código e se quiser escalar para outras plataformas, ao se escolher o *GPL e você não usar static linking (usar os arquivos .a) e usar dynamic linking (.so), você pode comercializar seu software sem ter que abrir o código, a principal desvantagem é que não se integra bem no GNOME Shell no Wayland


GTKmm se você quer uma boa integração com GNOME Shell no Wayland
se você não usar static linking (usar os arquivos .a) e usar dynamic linking (.so), você pode comercializar seu software sem ter que abrir o código, o preço a se pagar é ter que ter uma manutenção maior com o código, você pode amortizar isso se usar AppImage


FLTK se você quiser leveza extrema você pode usar static linking (.a) mesmo em aplicações comerciais sem precisar abrir o código fonte, a API é semi estável o que significa ser um meio termo entre o Qt e o GTKmm, a desvantagem é que seu app ficará com um visual destoante do sistema operacional, além de não ter suporte a wayland


WxWidgets é um wrapper estável pro GTK com widgets a mais, não suporta headerbar então a barra de títulos, você não pode usar static linking sem abrir o código fonte, dynamic linking sim


Esses são os mais populares, você pode querer dar uma olhada no IUP que é brasileiro é um wrapper pro GTK, mas parece abandonado

2 Curtidas