Un file con estensione .lib è un formato di libreria statica, utilizzato principalmente nei sistemi Windows. Contiene codice pre-compilato, routine, funzioni e dati che possono essere collegati a un programma durante il processo di compilazione. A differenza delle librerie dinamiche (DLL), il codice di una libreria statica viene copiato direttamente nel file eseguibile durante la fase di linking. Ciò significa che l'eseguibile risultante è autonomo e non dipende dalla presenza di file di libreria esterni sul sistema durante l'esecuzione. Le librerie statiche sono spesso utilizzate per distribuire componenti di codice riutilizzabili, come funzioni matematiche, strutture dati o elementi di interfaccia grafica (GUI). Offrono il vantaggio di semplificare la distribuzione, poiché tutto il codice necessario è incorporato nell'eseguibile. Tuttavia, possono comportare dimensioni dell'eseguibile maggiori e una potenziale duplicazione del codice se la stessa libreria viene utilizzata da più programmi. Quando un programma viene compilato, il linker risolve i riferimenti alle funzioni e ai dati all'interno della libreria statica e incorpora il codice corrispondente nell'eseguibile finale. Questo processo crea un singolo file eseguibile indipendente che può essere eseguito senza richiedere la presenza del file .lib stesso.