Como Instalar Zig no Fedora e RHEL
Este guia apresenta como instalar o compilador Zig em distribuições baseadas em Red Hat, incluindo Fedora, CentOS Stream, RHEL (Red Hat Enterprise Linux), AlmaLinux e Rocky Linux. Cobriremos a instalação via download direto, repositórios do sistema e configuração completa do ambiente.
Se você quer uma visão geral de todas as opções de instalação, visite nosso guia completo de instalação. Para uma introdução à linguagem Zig, confira o tutorial de introdução.
Método 1: Download Direto do Site Oficial (Recomendado)
O método mais confiável para ter a versão mais recente do Zig é baixar o binário pré-compilado diretamente do site oficial. O Zig é distribuído como um binário estático, sem dependências externas, o que facilita muito a instalação.
Passo 1: Identificar a Arquitetura
uname -m
Resultados comuns:
x86_64— Maioria dos desktops e servidoresaarch64— Servidores ARM (AWS Graviton, Ampere, etc.)
Passo 2: Baixar o Zig
ZIG_VERSION="0.14.0"
ARCH=$(uname -m)
curl -LO "https://ziglang.org/download/${ZIG_VERSION}/zig-linux-${ARCH}-${ZIG_VERSION}.tar.xz"
Passo 3: Extrair e Instalar
tar -xf "zig-linux-${ARCH}-${ZIG_VERSION}.tar.xz"
sudo mv "zig-linux-${ARCH}-${ZIG_VERSION}" /opt/zig
Passo 4: Configurar o PATH
No Fedora, o shell padrão é o Bash. Adicione o Zig ao PATH:
echo 'export PATH="/opt/zig:$PATH"' >> ~/.bashrc
source ~/.bashrc
Como alternativa, você pode criar um link simbólico, que é automaticamente reconhecido pelo sistema:
sudo ln -sf /opt/zig/zig /usr/local/bin/zig
Passo 5: Verificar a Instalação
zig version
Saída esperada:
0.14.0
Teste com um programa simples:
const std = @import("std");
pub fn main() !void {
const stdout = std.io.getStdOut().writer();
try stdout.print("Zig rodando no Fedora!\n", .{});
}
zig run main.zig
Método 2: Instalação via Repositórios do Sistema (dnf)
Algumas versões do Fedora incluem o Zig nos repositórios oficiais. Essa é a forma mais simples, embora a versão disponível possa não ser a mais recente.
Verificar Disponibilidade
dnf info zig
Instalar via dnf
Se o pacote estiver disponível:
sudo dnf install zig
Verificar a Versão Instalada
zig version
Importante: Os repositórios do Fedora podem ter uma versão anterior do Zig. Se você precisar da versão mais recente, use o Método 1 (download direto) ou o gerenciador de versões zigup.
Método 3: Usando COPR (Repositório da Comunidade)
O COPR (Cool Other Package Repositories) é o equivalente do Fedora ao PPA do Ubuntu. Existem repositórios mantidos pela comunidade que podem ter versões mais recentes do Zig:
# Pesquisar repositórios COPR com Zig
sudo dnf copr search zig
Se encontrar um repositório adequado:
sudo dnf copr enable <usuario>/<repositorio>
sudo dnf install zig
Cuidado: Repositórios COPR são mantidos pela comunidade e não são oficialmente suportados pela Red Hat. Verifique a confiabilidade do mantenedor antes de adicionar.
Configuração para Desenvolvimento no Fedora
Dependências para Interoperabilidade com C
O Zig possui um compilador C integrado (baseado no Clang), mas para linkar com bibliotecas do sistema no Fedora, instale o grupo de desenvolvimento:
sudo dnf groupinstall "Development Tools" "Development Libraries"
Isso inclui gcc, make, headers do kernel e outras ferramentas essenciais.
Headers de Bibliotecas Comuns
Para projetos que usam FFI (Foreign Function Interface) com bibliotecas do sistema:
# Headers do sistema
sudo dnf install glibc-devel kernel-headers
# Para projetos gráficos
sudo dnf install libX11-devel wayland-devel mesa-libGL-devel
# Para networking
sudo dnf install openssl-devel libcurl-devel
SELinux e o Zig
O Fedora usa SELinux por padrão. Na maioria dos casos, o Zig funciona sem problemas. No entanto, se você encontrar erros de permissão ao executar binários compilados com Zig, verifique o contexto SELinux:
# Verificar o status do SELinux
getenforce
# Verificar logs de negação do SELinux
sudo ausearch -m AVC -ts recent
# Se necessário, restaurar o contexto do binário
sudo restorecon -v /caminho/para/seu/binario
Script de Instalação Automatizada
Para automatizar a instalação em várias máquinas Fedora ou scripts de provisionamento:
#!/bin/bash
set -euo pipefail
ZIG_VERSION="${1:-0.14.0}"
ARCH=$(uname -m)
INSTALL_DIR="/opt/zig"
DOWNLOAD_URL="https://ziglang.org/download/${ZIG_VERSION}/zig-linux-${ARCH}-${ZIG_VERSION}.tar.xz"
echo "=== Instalando Zig ${ZIG_VERSION} no Fedora ==="
echo "Arquitetura: ${ARCH}"
# Baixar
echo "Baixando de ${DOWNLOAD_URL}..."
curl -LO "${DOWNLOAD_URL}"
# Extrair
echo "Extraindo..."
tar -xf "zig-linux-${ARCH}-${ZIG_VERSION}.tar.xz"
# Instalar
sudo rm -rf "${INSTALL_DIR}"
sudo mv "zig-linux-${ARCH}-${ZIG_VERSION}" "${INSTALL_DIR}"
sudo ln -sf "${INSTALL_DIR}/zig" /usr/local/bin/zig
# Limpar
rm -f "zig-linux-${ARCH}-${ZIG_VERSION}.tar.xz"
# Verificar
echo ""
echo "=== Instalação concluída ==="
zig version
echo "Execute 'zig zen' para ver a filosofia do Zig!"
Uso:
chmod +x instalar-zig-fedora.sh
./instalar-zig-fedora.sh 0.14.0
Desinstalando o Zig
Instalado via download direto:
sudo rm -rf /opt/zig
sudo rm -f /usr/local/bin/zig
# Se adicionou ao PATH via .bashrc, remova a linha correspondente
Instalado via dnf:
sudo dnf remove zig
Usando o Zig como Compilador C/C++ no Fedora
Uma característica poderosa do Zig é sua capacidade de funcionar como um compilador C/C++ drop-in com cross-compilation integrada. No Fedora, isso é especialmente útil para compilar projetos C existentes:
# Compilar um programa C com o Zig
zig cc -o meu_programa meu_programa.c
# Compilar com otimizações
zig cc -O2 -o meu_programa meu_programa.c
# Cross-compilar para ARM
zig cc --target=aarch64-linux-gnu -o meu_programa_arm meu_programa.c
Para projetos que usam Makefiles:
CC="zig cc" CXX="zig c++" make
Isso pode ser particularmente útil para criar builds reprodutíveis e para cross-compilation, algo que normalmente requer configuração complexa de toolchains no Fedora.
Problemas Comuns no Fedora
Conflito com pacote do repositório
Se você instalou via dnf e também manualmente, pode haver conflitos. Remova a versão do repositório antes de instalar manualmente:
sudo dnf remove zig
Firewall bloqueando downloads
O firewalld do Fedora normalmente não bloqueia conexões de saída, mas se estiver em um ambiente corporativo:
# Verificar se consegue acessar o site do Zig
curl -I https://ziglang.org/download/
Problemas com Wayland
Se estiver desenvolvendo aplicações gráficas com Zig no Fedora (que usa Wayland por padrão), certifique-se de instalar os headers corretos:
sudo dnf install wayland-devel wayland-protocols-devel libxkbcommon-devel
Para mais soluções de problemas, visite nossa página de erros comuns.
CentOS Stream e RHEL
Para CentOS Stream e RHEL, o processo é essencialmente o mesmo do Método 1 (download direto). Essas distribuições tendem a ter pacotes mais antigos nos repositórios, então o download direto é fortemente recomendado.
No RHEL, pode ser necessário habilitar repositórios adicionais para dependências de desenvolvimento:
# RHEL 9
sudo subscription-manager repos --enable codeready-builder-for-rhel-9-x86_64-rpms
# RHEL 8
sudo subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms
Para AlmaLinux e Rocky Linux, os passos são idênticos ao CentOS Stream.
Próximos Passos
Com o Zig instalado no Fedora/RHEL:
- Configure seu editor — VS Code, Neovim ou outros editores
- Crie seu primeiro projeto — Primeiro projeto Zig
- Gerencie versões — Gerenciar versões do Zig para trabalhar com múltiplos projetos
- Aprenda a linguagem — Introdução ao Zig
- Veja exemplos — Receitas com código pronto para uso
Se você usa containers para desenvolvimento, confira nosso guia de Zig com Docker para ambientes reprodutíveis e CI/CD.