Skip to content
Latchkey

O Que É Static Linking?

O static linking copia o código das bibliotecas necessárias para dentro do executável em tempo de build, de modo que o binário resultante contém tudo o que precisa para rodar. Não há dependência de que essas bibliotecas estejam presentes no sistema target. Isso produz artifacts maiores, mas totalmente autocontidos e fáceis de fazer deploy.

Por que isso importa

Um binário com static linking roda em um sistema mínimo ou básico, como uma imagem de container distroless ou scratch, sem instalar bibliotecas compartilhadas, o que simplifica o deploy e evita incompatibilidades de versão de dependências. As contrapartidas são binários maiores e a necessidade de rebuild para incorporar uma correção de segurança de biblioteca.

Conceitos relacionados

  • Oposto de dynamic linking
  • Habilita imagens de container mínimas e distroless
  • Correções de biblioteca exigem um rebuild, não apenas uma atualização

Guias relacionados