Oprettelse og kørsel af en Linux '.a' fil

Oprettelse Og Korsel Af En Linux A Fil



At arbejde med filer i et Linux-operativsystem kræver involvering af forskellige kommandoer og teknikker, der gør det muligt for udviklerne at oprette og udføre filerne, koden, programmerne, scripts og andre ting effektivt. I Linux-miljøet har filer med filtypenavnet '.a' en væsentlig betydning som statiske biblioteker. Disse biblioteker spiller en vigtig rolle i softwareudvikling, hvilket giver udviklerne mulighed for effektivt at administrere og effektivt dele de fælles funktioner med flere programmer.

At forstå, hvordan man opretter og kører en '.a'-fil er afgørende for effektiv softwareudvikling i Linux-miljøet. Dette er en omfattende vejledning til installation og konfiguration af en Linux '.a'-fil. Lad os finde ud af, hvad Linux '.a'-fil er, udforske dens formål, struktur, og hvordan den kan oprettes og udføres.

Hvad er en '.a' fil i Linux?

En Linux '.a' fil er en arkivfil, der fungerer som en beholder for en kompileret kode og data. Det er almindeligvis kendt som et statisk bibliotek, der indeholder koder, der er knyttet til den kaldende kode på kompileringstidspunktet, som bliver en grundlæggende del af applikationen. Disse Linux '.a'-filer giver et prækompileret, grundlæggende bidrag til applikationen, der fuldstændigt står i kontrast til Linux '.so' dynamiske biblioteksfiler, hvor der linkes under kørsel.







Lad os forestille os et scenarie, hvor en udvikler implementerer tre forskellige programmer. Ved at vide, at den delte funktionalitet mellem disse programmer eksisterer, opretter programmøren et bibliotek, der indkapsler disse fælles funktioner, som præsenteres som en '.a'-fil. Den vigtige nyhed at vide på dette tidspunkt er, at Linux '.a'-filerne bliver en genanvendelig samling af kode og data, som andre udviklere kan bruge i deres projekter.



Forudsætninger:

Før du går videre for at lære at oprette og køre en '.a'-fil i Linux, er det vigtigt at vide et par grundlæggende ting. Der er et par forudsætninger, der bør sikres, før du udfører en funktion i Linux. De er som følger:



  • Ubuntu 20.04 eller enhver nyeste version
  • Adgang til en kommandolinje eller terminalvindue
  • En brugerkonto, specifikt sudo-privilegier, til forskellige filer og mapper

Hvordan opretter og kører du en Linux '.a' fil?

Oprettelse og kørsel af en Linux '.a'-fil involverer en række trin: oprettelse, kompilering og udførelse. Forskellige måder kan bruges til at udføre disse handlinger, og vi vil udforske hver af dem individuelt. Lad os begynde.





Du skal bruge en GCC-compiler for at køre og udføre følgende eksempel. Compileren bruges til at køre alle kommandoerne for at oprette og køre Linux '.a'-filen:



Det følgende er de trin, der forklares gennem forskellige kommandoer og teknikker.

Trin 1: Kompiler en C-kildefil

Start arbejdet ved at oprette en kildefil af C ved hjælp af en GCC-kompiler til at kompilere C-kildefilerne (.c) til objektfiler (.o) med følgende kommando:

$ gcc -Væg -c * .c

'-Wall'-flaget aktiverer alle advarsler, og '-c'-flaget fortæller GCC kun at kompilere, ikke linke, på dette tidspunkt.

Trin 2: Opret biblioteksarkivet

Det næste trin er at oprette biblioteksfilen. Kommandoen 'ar' opretter det statiske biblioteksarkiv (.a) fra objektfilerne. Derfor bruger vi følgende kommando:

$ Med -cvq libfile.a * .O

Denne kommando opretter en statisk arkivfil med navnet 'libfile.a' ved at kombinere forskellige objektfiler, der har en '.o'-udvidelse ved at bruge kommandoen 'ar' (arkiv) i Linux-operativsystemerne. Denne kommando har tre ting at bemærke: 'c', 'v' og 'q'. Lad os nedbryde komponenterne og forstå formålet med hvert flag og argument i forbindelse med denne kommando:

ar: Den udfører arkivkommandoen i Linux-systemerne. Den grundlæggende funktion af kommandoen 'ar' er at oprette, ændre og udtrække fra arkiv.

-c: Dette flag instruerer at oprette et nyt arkiv, hvis det ikke allerede er oprettet eller endnu ikke eksisterer. Hvis der findes en arkivfil med det givne navn, sikrer '-c'-flaget, at den bliver genskabt og erstatter eventuelt tidligere indhold.

-v: Det verbose flag viser en detaljeret information om arkiveringsprocessen. Det giver en tilbagemelding på, hvilke filer der tilføjes til arkivet.

-q: 'q' står for 'quickly append'. Det beder 'ar'-flaget om straks at tilføje de angivne filer til arkivet uden at tjekke for duplikerede symboler eller tidskrævende operationer.

libfile.a: Filens navn er påkrævet for den kommando, der vil blive oprettet eller ændret. Her giver vi et filnavn som 'libfile' med filtypen '.a', hvilket indikerer, at det er en statisk biblioteksarkivfil.

*.o: '*' i slutningen af ​​kommandoen repræsenterer hver fil i den valgte mappe med en '.o' filtypenavn, som refererer til objektfilerne. Objektfiler er resultaterne af kildekodekompilering og indeholder en maskinkode, der endnu ikke er knyttet til nogen endelig eksekverbar.

Trin 3: Visning af bibliotekets indhold

Nu hvor vi oprettede biblioteksarkivet, kan vi se det ved hjælp af kommandoen 'ar -t'. Kommandoen 'ar -t' viser alt indhold, der er til stede i biblioteket.

$ Med -t libfile.a

Kommandoen 'ar -t libfile.a' viser alle de objektfiler, der er indeholdt i den statiske biblioteksarkivfil med navnet 'libfile.a' ved hjælp af kommandoen 'ar' i et Linux-operativsystem. Lad os analysere hvert flag og deres funktionalitet:

ar: Som tidligere nævnt er dette arkivkommandoen i Linux-systemer.

-t: '-t' flaget bruges til at vise arkivets indholdsfortegnelse, der viser navnene på objektfilerne, der er gemt i 'libfile.a.'

libfile.a: For at læse dataene skal vi kende navnet på arkivfilen.

Trin 4: Brug af biblioteket i et andet program

Lad os nu se, hvordan du bruger den nyudviklede Linux '.a'-fil i et andet program. Da vi oprettede et bibliotek, kan det nu bruges hvor som helst og i ethvert program ved blot at tilføje biblioteket til kompileringskommandoen. Vi kan opnå det ved hjælp af den efterfølgende kommando. Det inkluderer alle de nødvendige overskrifter og links til biblioteket.

$ gcc -O MyProgramMain.c -L sti / til / lib er -fil

I denne kommando specificerer '-L' biblioteksstien, '-lfile' linker mod 'library.a' libfilen, fjerner 'lib' præfikset og '.a' suffikset.

Trin 5: Kør en '.a' Linux-fil

Endelig kan vi køre '.a'-filen. Resultatet vises for dig umiddelbart efter at have kørt følgende script i din terminal:

$ . / MyProgramMain

Denne kommando udfører filen ved at bruge de funktioner, der findes i både kildefilerne og det tilknyttede statiske bibliotek.

Konklusion

Oprettelse og kørsel af en '.a'-fil i Linux kræver kompilering af de forskellige kommandoer, der udfører filoprettelse, kompilering og linkning. Forståelse af disse trin og funktionaliteterne for hver kommando gør det muligt for udviklerne at organisere deres kode, bruge eksterne biblioteker og udvikle skalerbare programmer. Uanset om du skal bruge de grundlæggende kommandoer som nano og GCC, eller du er ved at arbejde med mere avancerede teknikker med statiske biblioteker, hjælper det at mestre disse færdigheder i praktisk Linux-baseret udvikling.