PgModeler no Windows 11

Em alguns cenários de desenvolvimento, não faz sentido depender de instaladores prontos — principalmente quando se precisa de versões mais recentes ou controle sobre o ambiente.

Esse é o caso do pgModeler, uma ferramenta de modelagem para PostgreSQL que pode ser compilada diretamente no Windows.

Importante: embora o pgModeler seja open-source (GPLv3), os binários oficiais são distribuídos comercialmente. A redistribuição de binários exige o cumprimento das obrigações da GPL (como disponibilização do código-fonte), o que nem sempre é viável em ambientes corporativos. Por isso, o build local costuma ser a abordagem mais adequada.

Para isso, utilizamos o MSYS2, que fornece um ambiente Unix-like com gerenciador de pacotes e toolchain moderna.


Sobre o pgModeler

O pgModeler é uma ferramenta open-source para modelagem de bancos de dados PostgreSQL, permitindo criar diagramas, gerar scripts SQL e realizar engenharia reversa de estruturas existentes.

Ele é desenvolvido em C++ com interface baseada em Qt, o que exige um processo de build específico no Windows.

Por que compilar manualmente?

Embora existam versões pré-compiladas, o build local é, na prática, a opção mais segura em ambientes controlados.

Atenção: a distribuição de binários do pgModeler não é proibida pela licença, mas implica obrigações da GPLv3 (como fornecer o código-fonte correspondente e manter a mesma licença). Além disso, os binários oficiais fazem parte do modelo comercial do projeto.

Além disso, compilar garante:

  • Uso da versão mais atual
  • Controle sobre dependências
  • Padronização do ambiente de desenvolvimento

1) Download do MSYS2

Acesse o site oficial:

Ou diretamente:

Baixe o instalador:

msys2-x86_64-*.exe

2) Instalação

  • Execute o instalador
  • Mantenha o caminho padrão:
C:\msys64
  • Finalize a instalação
  • Feche o terminal que será aberto automaticamente

3) Primeira execução

Abra:

MSYS2 MinGW64

Atualize o sistema:

pacman -Syu

Após a execução, o terminal será fechado automaticamente.

Abra novamente o MSYS2 MinGW64 e execute:

pacman -Syu

Repita até não haver mais atualizações.


4) Instalação das dependências

Ainda no MSYS2 MinGW64, instale os pacotes necessários:

pacman -S --needed \
  git \
  mingw-w64-x86_64-gcc \
  mingw-w64-x86_64-clang \
  mingw-w64-x86_64-cmake \
  mingw-w64-x86_64-ninja \
  mingw-w64-x86_64-qt6-base \
  mingw-w64-x86_64-qt6-svg \
  mingw-w64-x86_64-qt6-tools \
  mingw-w64-x86_64-postgresql \
  mingw-w64-x86_64-libxml2

Observação: versões recentes do pgModeler utilizam Qt 6 + CMake + Ninja.


5) Download do código-fonte

cd ~
git clone https://github.com/nullptrlabs/pgmodeler.git
cd pgmodeler

6) Build do pgModeler

Crie o diretório de build:

mkdir build
cd build

Configuração

cmake .. \
  -G Ninja \
  -DCMAKE_BUILD_TYPE=Release \
  -DCMAKE_INSTALL_PREFIX="$HOME/pgmodeler-dist" \
  -DPGM_PREFIX="$HOME/pgmodeler-dist"

Compilação

ninja
ninja install

7) Empacotamento das dependências (Qt)

Após o build, é necessário copiar automaticamente as DLLs do Qt:

cd ~/pgmodeler-dist
windeployqt6 --force-openssl pgmodeler.exe

8) Execução

./pgmodeler.exe

Considerações finais

Compilar o pgModeler utilizando o MSYS2 traz benefícios importantes para ambientes de desenvolvimento:

  • Controle total das dependências e versões
  • Uso de toolchain moderna (GCC/Clang + Ninja)
  • Ambiente consistente com Linux
  • Facilidade de atualização e troubleshooting

Para quem trabalha com PostgreSQL de forma mais profunda (modelagem, versionamento de schema, engenharia reversa), o pgModeler é uma alternativa sólida e altamente técnica.


Referências


Publicado

em

por

Tags: