.LIB

LIB-fil

Static / Import Library (COFF)
Still et spørsmål
HURTIGSVAR

En .lib-fil er et kompilatorbibliotek som brukes av linkeren når man bygger C/C++-programmer på Windows. Det er enten et statisk bibliotek (kompilert objektkode som bakes inn i programmet ditt) eller et importbibliotek (stubs som kobler programmet ditt til en DLL ved kjøretid). Du åpner eller kjører ikke en .lib - byggesystemet bruker den. For å inspisere en, kjør lib /list eller dumpbin /symbols fra en Visual Studio Developer Command Prompt.

Utvikler: Microsoft (with Unix ar lineage) Kategori: Utviklerfiler Åpen standard MIME: application/octet-stream
ÅPNES PÅ Windows Linux
Relatert: .DO · .MD · .HEX · .XSD

På denne siden

19k+ filendelser indeksert
Sist vurdert Jun 24, 2026

Usikker på hva filen din er?

Slipp hvilken som helst fil inn i vår identifikator - vi leser bare de første bytene for å navngi formatet.

Identifiser en fil

Hva er LIB-filformatet?

En .lib-fil er en biblioteksfil som fungerer som input til linkeren. .lib-filer kommer i to varianter: standard statiske biblioteksfiler og COFF (Common Object File Format) import-biblioteksfiler. De statiske biblioteksfilene inneholder kompilerte .obj objektmoduler; import-biblioteksfilene inneholder symbol- og ordinal-stubs som peker til en .dll, noe som gir linkeren informasjonen den trenger for å løse avhengigheter ved kjøretid. Verktøyet LIB.EXE brukes til å lage begge typer biblioteksfiler. På binært nivå er en .lib et arkiv i ar-format som starter med den 8-byte lange signaturen !<arch> - den samme strukturen som brukes av Unix .a statiske biblioteker. Du kan inspisere innholdet med DUMPBIN /HEADERS eller ar -t.

Sikkerhet og trygghet

RISIKO: LOW

En .lib-fil er data for byggeprosessen, ikke noe Windows kjører, så den utgjør liten direkte risiko for sluttbrukere. For utviklere er bekymringen tillit til forsyningskjeden: et ondsinnet eller manipulert statisk bibliotek linker koden sin direkte inn i programmet ditt, så bruk kun .lib-filer fra pålitelige SDK-kilder og verifiser sjekksummer/signaturer. De urelaterte .lib-arkivene for spill/apper er inerte datafiler.

Formatdetaljer

i et nøtteskall
FULLT NAVNStatic / Import Library (COFF)
UTVIKLERMicrosoft (with Unix ar lineage)siden COFF lineage from Unix (1980s); MS .lib via Visual C++/MS-DOS toolchains, early 1990s
MIME-TYPEapplication/octet-stream
TYPEBiblioteksarkiv av COFF-objektfiler (statisk lib) eller import-stubs (import lib)
STANDARDÅpen · royalty-fri
Denne filendelsen brukes også av…
  • Spill- / applikasjonsarkiv (LIB) - Enkelte spill og apper (f.eks. ressurspakker for visse titler) bruker .lib som en tilpasset data- eller arkivbeholder urelatert til kompilatorbiblioteker.
MAGIC BYTES · FILSIGNATUR
OFFSET
0001020304050607
HEX
213C617263683E0A
ASCII
!<arch>·
En Windows/COFF .lib er et arkiv i ar-format, så det starter med den 8-byte lange signaturen «!<arch>\n» (samme familie som Unix .a statiske biblioteker). Medlemmene i arkivet er COFF-objektfiler. Merk: enkelte andre produkter (f.eks. noen spill og apper) gjenbruker .lib-utvidelsen for urelaterte data - disse vil ikke ha denne headeren.

Programmer som åpner LIB-filer

Windows3 apps
Microsoft Visual Studio Freemium Legg til .lib-filen i et prosjekts Linker > Input > Additional Dependencies; bygg for å koble mot den. Den «åpnes» ikke alene.
7-Zip Åpen kildekode Åpne .lib-filen som et arkiv for å bla i eller pakke ut COFF-objektmedlemmer (det er et ar-arkiv).
LIB / DUMPBIN (MSVC tools) Innebygd Fra en Developer Command Prompt: «lib /list file.lib» for å liste medlemmer, eller «dumpbin /symbols file.lib» for å se symboler.
Linux1 app
binutils (ar / nm) Åpen kildekode «ar t file.lib» lister medlemmer; «nm file.lib» lister symboler (fungerer på ar-format biblioteker inkludert MSVC .lib).

Tekniske detaljer

dyp spesifikasjon
Format-typeArkiv av COFF-objektmoduler (statisk lib) eller import-stubs (import lib)
Magic bytes21 3C 61 72 63 68 3E 0A - ASCII «!<arch>\n» ved byte-offset 0
Beholderstrukturar-arkivformat; samme 8-byte signaturfamilie som Unix .a statiske biblioteker
MIME-typeapplication/octet-stream
Innhold i statisk libCOFF .obj-medlemmer som inneholder kompilert maskinkode, relokeringsposter og symboltabeller
Innhold i import-libSymbolnavntabell, DLL-navn og eksport-ordinal/navn-stubs - ingen kjørbar maskinkode
HovedbrukLinker-input: brukes av LINK.EXE eller ld for å løse symbolreferanser ved bygging
OpprettelsesverktøyLIB.EXE (MSVC-verktøykjede); også ar og dlltool (GNU Binutils / MinGW)
InspeksjonsverktøyDUMPBIN.EXE /HEADERS, LIB.EXE /LIST, ar -t, nm
SymbolindeksFørste arkivmedlem er et symbolkart som muliggjør raskt symboloppslag under linking
Generering av import-libAutogenerert av LINK.EXE når man bygger en DLL; manuelt opprettet med LIB.EXE /DEF:<deffile>
Linker-kompatibilitetMicrosoft LINK.EXE, lld-link (LLVM); GNU ld via MinGW med delvis kompatibilitet
MålplattformHovedsakelig Windows (Win32 / Win64); eldre MS-DOS-verktøykjeder
KodingBinær; COFF-poster er justert etter maskinord inne i ar-arkivmedlemmene
Unix-motstykkeUnix/Linux .a statisk biblioteksarkiv, opprettet med ar og brukt av ld
UtviklerhistorikkMicrosoft-implementering av COFF; COFF selv stammer fra AT&T Unix System V (1983)
UtgittCOFF lineage from Unix (1980s); MS .lib via Visual C++/MS-DOS toolchains, early 1990s
Åpen standardJa · royalty-fri
Spesifikasjonlearn.microsoft.com

LIB-konverteringer

Spørsmål og svar fra fellesskapet

spurt av brukere
Still et raskt spørsmål
Få hjelp fra folk som jobber med LIB-filer. Vær spesifikk - inkluder systemet ditt og programvareversjon.
Ingen konto nødvendig · svar vanligvis innen en dag

Ingen spørsmål ennå - vær den første til å spørre om LIB-filer.

Ofte stilte spørsmål

Hva er en .lib-fil?
Et bibliotek som brukes ved kompilering av C/C++-programmer. Det er enten et statisk bibliotek (kompilert objektkode som linkeren kopierer inn i programmet ditt) eller et importbibliotek (stubs som kobler programmet ditt til en DLL ved kjøretid).
Hvordan åpner jeg en .lib-fil?
Du åpner den ikke som et dokument - linkeren bruker den under bygging. For å inspisere en, kjør «lib /list file.lib» eller «dumpbin /symbols file.lib» fra en Visual Studio Developer Command Prompt (eller «ar t» / «nm» på Linux).
Hva er forskjellen mellom en .lib og en .dll?
En statisk .lib blir bakt inn i programmet ditt ved bygging (ingen avhengighet ved kjøretid). En DLL lastes ved kjøretid; dens tilhørende import-.lib forteller bare linkeren hvilke funksjoner DLL-filen tilbyr.
Hvordan fikser jeg «cannot open file xxx.lib» (LNK1104)?
Pek linkeren til riktig mappe: legg til bibliotekets mappe under Linker > General > Additional Library Directories, og filen under Linker > Input > Additional Dependencies. Sørg for at .lib-filen faktisk eksisterer og samsvarer med plattformen din (x64/x86).
Kan jeg konvertere en .lib til en .dll eller .exe?
Ingen direkte konvertering eksisterer - de er ulike resultater av en byggeprosess. Du må rekompilere kildekoden som en DLL/EXE. Hvis det er en import-.lib, eksisterer DLL-filen allerede ved siden av den.
Kan jeg pakke ut .obj-filer fra en .lib?
Ja for et statisk bibliotek: bruk «lib /extract» (MSVC) eller «ar x file.lib» (Linux), eller bla gjennom den med 7-Zip siden det er et ar-arkiv.

Referanser

1Microsoft Learn - LIB reference (Library Manager)learn.microsoft.com
2Microsoft Learn - DUMPBIN referencelearn.microsoft.com

Utforsk videre

på tvers av databasen

Populære filendelser denne uken

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.PARTPartial Download File
4.DATProgram Data File (generic)
5.EXEWindows Executable (Portable Executable)
6.BINCD/DVD Disc Image (BIN/CUE)
7.RPMSGRestricted Permission Message
8.NOMEDIAAndroid No-Media Marker File
9.MDMarkdown Document
10.TMPTemporary File

Relaterte filendelser

.DOStata Do-File
.MDMarkdown Document
.HEXIntel HEX File
.XSDXML Schema Definition
.MAPSource Map (JavaScript / CSS)
.CONFIGConfiguration File

Gratis filverktøy

En filidentifikator og bildekonvertering i nettleseren - alt kjører på din enhet.

Åpne verktøykassen

Bla i filendelser A-Å