DevForge
Rust
Linguagem de programação focada em segurança, desempenho e concorrência. Sem coletor de lixo, com garantias de memória em tempo de compilação.
⚡ Instalação automatizada (rustup)
curl -fsSL https://rafaelferreira2312.github.io/devforge/scripts/rust/install.sh | bash -s stableSet-ExecutionPolicy Bypass -Scope Process; iex "& { $(irm https://rafaelferreira2312.github.io/devforge/scripts/rust/install.ps1) } stable"curl -fsSL https://rafaelferreira2312.github.io/devforge/scripts/rust/install.sh | bash -s stableOs scripts instalam o rustup (gerenciador oficial), configuram o toolchain padrão e adicionam ao PATH.
Requisitos mínimos
- CPU: 2+ núcleos (x86_64 ou ARM64)
- RAM: 2 GB (recomendado 4 GB para compilações grandes)
- Armazenamento: 5 GB SSD (cargo cache pode crescer)
- SO: Ubuntu 20.04+, Debian 11+, RHEL 8+, Windows 10/11, macOS 11+
Hardware recomendado (Dev)
- Notebook: Dell XPS, MacBook Pro M1/M2, Lenovo ThinkPad
- CPU: i7 / Ryzen 7 ou superior (compilações pesadas)
- RAM: 16 GB (32 GB para projetos grandes como compiladores)
- SSD NVMe 512 GB+
🛠️ Stack recomendada
Ferramentas essenciais
- Gerenciador: rustup (instalado automaticamente)
- Build system: Cargo (built-in)
- Framework web: Axum / Actix-web / Rocket
- Linter: clippy (built-in)
- Formatador: rustfmt (built-in)
Extensões VSCode
- rust-analyzer (oficial)
- Even Better TOML
- CodeLLDB (debugger)
- Crates (gerenciamento de dependências)
- Rust Test Explorer
Docker (opcional)
docker run -it --rm rust:latest rustc --version
🔧 Troubleshooting (diagnósticos reais)
❌ Erro: "rustc: command not found"
Causa: Rust não instalado ou não está no PATH.
Solução: Verifique com which rustc ou reinstale usando o script DevForge.
⚠️ Erro: "linker 'cc' not found"
Causa: Faltam ferramentas de build (build-essential no Linux ou Visual Studio no Windows).
Solução: No Linux: sudo apt install build-essential. No Windows: Instale Visual Studio C++ Build Tools.
🐘 Erro: "failed to run custom build command for 'openssl-sys'"
Causa: Dependência OpenSSL não instalada.
Solução: No Linux: sudo apt install pkg-config libssl-dev. No macOS: brew install openssl.
⚠️ Cargo build muito lento
Causa: Cache do Cargo ou compilação em modo debug.
Solução: Use cargo build --release para otimizar ou adicione [profile.dev] opt-level = 1 no Cargo.toml.
Diagnóstico automático:
rustc --version && cargo --version && rustup --version && rustup show && echo "---" && which rustc
Este comando verifica: versão do compilador, versão do Cargo, versão do rustup, toolchains instalados e localização do binário.
⚙️ Comandos Cargo úteis
cargo new meu_projeto – cria novo projetocargo build – compila o projetocargo run – compila e executacargo test – executa testescargo add nome_da_crate – adiciona dependênciacargo update – atualiza dependênciascargo doc --open – gera documentação🔧 Componentes e ferramentas extras
rustup component add clippy – linter oficialrustup component add rustfmt – formatadorrustup component add rust-docs – documentação localrustup target add wasm32-unknown-unknown – compilar para WebAssemblycargo install cargo-audit – auditoria de segurançacargo install cargo-tree – visualiza dependências⚠️ IMPORTANTE - Como executar os scripts corretamente
Os scripts abaixo funcionam em Windows, Linux e macOS. Siga as instruções específicas do seu sistema:
# ERRO COMUM: "arquivo não assinado" ou "execução de scripts desabilitada"
# SOLUÇÃO 1: Executar com bypass (recomendado)
powershell -ExecutionPolicy Bypass -File "C:\caminho\script.ps1"
# SOLUÇÃO 2: Baixar e executar direto (pode ter erro de codificação)
powershell -ExecutionPolicy Bypass -Command "iex (irm https://.../script.ps1)"
# SOLUÇÃO 3: Habilitar execução permanentemente (como Administrador)
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
# Se houver erros de acentuação (caracteres estranhos): O script ainda funciona, apenas a saída visual pode ficar distorcida
# ERRO COMUM: "permission denied" ou "comando não encontrado"
# SOLUÇÃO 1: Dar permissão de execução (obrigatório)
chmod +x script.sh
# SOLUÇÃO 2: Executar o script
./script.sh
# SOLUÇÃO 3: Executar via curl (baixar e executar direto)
curl -fsSL https://.../script.sh | bash
# SOLUÇÃO 4: Se der erro de permissão, use sudo (cuidado!)
sudo chmod +x script.sh && sudo ./script.sh
# Se houver erros de permissão: Execute 'ls -la script.sh' para verificar permissões atuais
# ERRO COMUM: "permission denied" ou "operation not permitted"
# SOLUÇÃO 1: Dar permissão de execução
chmod +x script.sh
# SOLUÇÃO 2: Executar o script
./script.sh
# SOLUÇÃO 3: Se der erro de "quarentena" (arquivo baixado da internet)
xattr -d com.apple.quarantine script.sh
# SOLUÇÃO 4: Executar via curl
curl -fsSL https://.../script.sh | bash
# Se erro persistir: Vá em Preferências do Sistema → Segurança e Privacidade → Permitir execução
Dicas importantes:
• Windows: Se aparecerem caracteres estranhos (ex: "�" ou "ção"), ignore - o script funciona normalmente. Para evitar, baixe o script localmente e execute.
• Linux/macOS: Sempre use chmod +x antes de executar scripts baixados.
• WSL (Windows): Siga as instruções do Linux, mas certifique-se de que o script está dentro do sistema de arquivos do Linux (não no /mnt/c/).
📜 Scripts prontos
Scripts verificados no Ubuntu 22.04/24.04, Debian 12, macOS 13+ e Windows 10/11.
❓ Perguntas frequentes
Qual a diferença entre stable, beta e nightly?
Stable: para a maioria dos projetos. Beta: versão de teste, recursos que serão lançados. Nightly: compilações diárias com recursos experimentais (ex: const generics).
Como gerenciar múltiplas versões do Rust?
Use rustup: rustup toolchain install 1.82 && rustup default 1.82 para alternar.
Rust para WebAssembly (WASM) é viável?
Sim! Rust é uma das melhores opções para WASM. Use wasm-pack e compile com target wasm32-unknown-unknown.
Como reduzir o tempo de compilação?
Use cargo check para verificação rápida, use sccache para cache de compilação ou adicione [profile.dev] opt-level = 0 no Cargo.toml.