Um arquivo com a extensão .lib é um formato de biblioteca estática, utilizado principalmente em sistemas Windows. Ele contém código pré-compilado, rotinas, funções e dados que podem ser vinculados a um programa durante o processo de compilação. Diferente das bibliotecas dinâmicas (DLLs), o código de uma biblioteca estática é copiado diretamente para o arquivo executável durante a fase de vinculação (linking). Isso significa que o executável resultante é autossuficiente e não depende da presença de arquivos de biblioteca externos no sistema durante a execução. Bibliotecas estáticas são frequentemente usadas para distribuir componentes de código reutilizáveis, como funções matemáticas, estruturas de dados ou elementos de interface gráfica (GUI). Elas oferecem a vantagem de simplificar a implantação, já que todo o código necessário está incorporado no executável. No entanto, podem resultar em arquivos executáveis maiores e na potencial duplicação de código caso a mesma biblioteca seja utilizada por múltiplos programas. Quando um programa é compilado, o vinculador (linker) resolve as referências a funções e dados dentro da biblioteca estática e incorpora o código correspondente no executável final. Esse processo cria um único arquivo executável independente que pode ser executado sem a necessidade da presença do arquivo .lib original.