Binær vs kildepakker: Hvilken skal du bruke?

Linux-brukere har to hovedtyper for å installere programmer: Bruk en forhåndsbygget pakke eller kompilere det selv. Vanligvis velger vi en pakke, men det er tider når du bør vurdere å bygge fra kilde.

Linux-brukere har to hovedtyper for å installere programmer: Bruk en forhåndsbygget pakke eller kompilere det selv.  Vanligvis velger vi en pakke, men det er tider når du bør vurdere å bygge fra kilde.
Annonse

Uansett pakkebehandling Hvilken Linux Package Manager (og Distro) er riktig for deg? Hvilken Linux Package Manager (og Distro) er riktig for deg? En nøkkelforskjell mellom de viktigste Linux distrosene er pakkehåndteringen; forskjellene er sterke nok til at det kan påvirke ditt valg av distro. La oss se på hvordan de ulike pakkelederne jobber. Les mer du bruker, du har to måter å installere programmer på Linux på. Du bruker enten en ferdigbygget pakke, eller kompilerer den selv. I disse dager vinner den tidligere vanligvis som standard. Det er imidlertid tidspunkter når du bør vurdere alternativet.

Hva er binære pakker?

Installere programmer på Linux er vanligvis ganske annerledes enn å installere på Windows. I stedet for å få installatørene av en leverandørs nettside, hentes filene fra et arkiv av programmer, vanligvis skreddersydd Slik tilpasser du Ubuntu 16.04 LTS-skrivebordet Slik tilpasser du Ubuntu 16.04 LTS-skrivebordet Sikt på standard Ubuntu-utseende? Tid til å tilpasse Ubuntu slik du vil ha det? Med Unity Tweak Tool og noen enkle terminalkommandoer, kan du gjøre din Unity din egen! Les mer for operativsystemet ditt.

Filer for separate programmer lagres i et arkivformat. Hva er den beste filkomprimeringsmetoden? MakeUseOf-tester Zip, RAR og mer Hva er den beste filkomprimeringsmetoden? MakeUseOf-tester Zip, RAR & More Filkomprimering er en viktig og vanlig oppgavebrukere, ofte spør av datamaskinene sine. Å redusere filens størrelse gjør det lettere å e-post eller plassere på en flash-stasjon. Det reduserer også båndbreddebruk og ... Les mer. Dette kombinerer alt til en enkelt fil for enkel tilgang senere. For eksempel bruker Debian DEB-formatet til å lagre sine programmer. Disse buntene kalles binære pakker .

deb pakkeformat

Installere krever et spesielt program for å pakke ut disse filene og sette dem på datamaskinen. Det vil si, pakkebehandling (f.eks. APT, Yum, og så videre). Det gjør også andre nyttige ting, for eksempel å holde oversikt over hvilke filer du har installert, og administrere programvareoppdateringer.

Hvor kommer pakker fra?

All programvare er skrevet i tekstlinjer kalt kildekode. De er skrevet i bestemte programmeringsspråk 6 Lettest programmeringssprog å lære for nybegynnere 6 Lettest programmeringssprog å lære for nybegynnere Lære å programmere handler om å finne riktig språk like mye som det handler om oppbyggingsprosessen. Her er de seks beste programmeringsspråket for nybegynnere. Les mer, for eksempel C eller C ++. Vanligvis kan du imidlertid ikke bare pakke det inn i et arkiv og kalle det en pakke. Disse linjene må oversettes til et språk datamaskinen kan forstå og utføre.

Denne prosessen kalles kompilering Hvordan å kompilere og installere TAR GZ & TAR BZ2-filer i Ubuntu Linux. Hvordan kompilere og installere TAR GZ & TAR BZ2-filer i Ubuntu Linux Les mer, sluttresultatet oppretter binære filer som datamaskinen kan kjøre. Det er disse binærene som er lagret sammen inne i en pakke, sammen med andre ting som konfigurasjonsfiler. Hva er Config-filer, og hvordan kan du redigere dem? Hva er Config-filer, og hvordan kan du redigere dem? De aller fleste programmer er konfigurert via et menygrensesnitt, men noen krever at du tar et skritt videre og faktisk redigerer en tekstfil. Men hvordan fungerer disse "config-filene"? Les mer .

Hva installerer "fra kilde"?

Kompilering av kildekoden er ikke bare for å lage pakker. Faktisk er det ikke engang nødvendig å lage et slikt arkiv fra det. I utgangspunktet betyr installasjon av et program "fra kilde" å installere noe uten å bruke en pakkebehandling . Du kompilerer kildekoden og kopierer binærfilene til datamaskinen din i stedet.

Mesteparten av tiden kan du laste ned et prosjekt kildekode fra hosting-tjenester som GitHub eller BitBucket Love GitHub? 4 grunner til at du bør være vert for koden din på BitBucket Love GitHub? 4 grunner til at du bør være vert for koden din på BitBucket Du må tenke på hvor du har tenkt å lagre koden din. Det er sannsynlig at du har hørt om GitHub. Det er ikke overraskende. GitHub brukes av enkeltpersoner og bedrifter til vertskode, samarbeider om dokumentasjon ... Les mer. Større programmer kan også være vert for det på en personlig nettside. Koden vil vanligvis bli pakket opp i et arkivformat (også kjent som en kildepakke ).

kildepakke treet

Et spesielt sett med verktøy bidrar til å automatisere byggeprosessen. På Linux-skrivebord, kommer dette vanligvis i form av en kommandolinje En hurtigveiledning for å komme i gang med Linux-kommandolinjen En rask guide for å komme i gang med Linux-kommandolinjen Du kan gjøre mange fantastiske ting med kommandoer på Linux, og det er virkelig ikke vanskelig å lære. Les mer program som heter make . Kildekoden skrevet på forskjellige språk trenger spesifikke kompilatorer og kommandoer for å endre dem til binærfiler. Maskinprogrammet automatiserer Slik planlegger du oppgaver i Linux med Cron og Crontab Slik planlegger du oppgaver i Linux med Cron og Crontab Evnen til å automatisere oppgaver er en av de futuristiske teknologiene som allerede er her. Hver Linux-bruker kan dra nytte av planleggingssystemet og brukeroppgaver, takket være cron, en brukervennlig bakgrunnstjeneste. Les mer denne prosessen.

emacs makefile

For å gjøre dette gir programmene seg med en makefile som forteller det hva de skal gjøre og kompilere. I disse dager genereres det vanligvis automatisk av spesiell programvare som CMake. Det er her brukeren kommer inn. Fordi herfra kan de spesifisere nøyaktig hvilke funksjoner de ønsker å kompilere i sin egen programvare.

Rask demonstrasjon

For eksempel genererer kommandoen nedenfor en konfigurasjonsfil for Calligra Office Suite Calligra vs. LibreOffice: Hvilken produktiv Linux Office Suite inneholder mer? Calligra vs LibreOffice: Hva er den mer produktive Linux Office Suite? Les mer ved å bruke CMake. Filen som er opprettet, forteller at gjørprogrammet bare skal kompilere Writer- komponenten i Calligra.

cmake -DPRODUCTSET=WORDS -DCMAKE_INSTALL_PREFIX=$HOME/kde/inst5 $HOME/kde/src/calligra 

Etter å ha gjort dette, må alle en person gjøre, er å kjøre verktøyet for å kompilere og kopiere resultatene til datamaskinen. Dette gjøres på følgende måte:

 make make install 

Mens dette er det generelle mønsteret for kompilering av programmer, er det mange andre måter å installere kildepakker på. Gentoo Linux Gentoo: En Linux-distribusjon hvor du kompilerer din egen optimaliserte programvare Gentoo: En Linux-distribusjon hvor du kompilerer din egen optimaliserte programvare Det rene antallet forskjellige måter Linux kan kjøres på er utrolig, da det er mange valg å gå rundt . Mens det er mange distribusjoner som stole på enten .deb ... Les mer, for eksempel, har en innebygd måte å håndtere dette på, noe som gjør prosessen mye raskere og enklere. Sammen med dette, tar binære pakker noen få skritt enn bare de ovennevnte kommandoene.

Fordeler med å bruke binære pakker

Hvis du bruker Linux, er det sjansene for at programmene du har installert, var forhåndskompilert. I disse dager er det mye mer vanlig enn å bruke kildepakker. Det er noen grunner til at det er tilfelle.

Lettere å administrere

Binære pakker inneholder mye mer enn bare installerte installasjonsfiler. De lagrer også informasjon som gjør det enkelt for pakkeadministratoren Din veiledning til Ubuntu Repositories og pakkehåndtering Din guide til Ubuntu Repositories og Package Management Les mer for å holde oversikt over alle programmene dine. For eksempel, DEB-filer (pakkeformatet for Debian Debian: Nyt en av de mest stabile og pålitelige Linux-distribusjons Debian: Nyt en av de mest stabile og pålitelige Linux-distribusjonene Det er mange Linux-brukere der ute som bruker distribusjoner som Ubuntu eller en av de mange distribusjonene som er basert på Ubuntu, inkludert Linux Mint. Uansett hva du bruker, ... Les mer og Debian-derivater) inneholder også viktig informasjon, for eksempel hvilken annen programvare programmet trenger å kjøre, og den nåværende versjonen.

deb pakkeformat

Dette gjør pakker mye enklere å installere. Du trenger ikke å bekymre deg for hvilke andre filer du trenger å installere for å lage et program som kjører for eksempel. Siden pakken din kan lese denne informasjonen fra selve pakken, håndterer den alt det automatisk.

Sammenlign dette for å installere programmer fra kilde. Med mindre du samler koden i en binær pakke av seg selv, vil du være ansvarlig for å administrere den programvaren. Du må huske på hvilke andre programmer du trenger for å få det til å fungere, og installere dem selv.

Bedre stabilitet

Pakkearkiver har en tendens til å teste sine binærfiler for problemer, og gjør sitt beste for å fikse dem når de vises. Dette kan føre til forbedret stabilitet av programmer, noe som en person som installert fra kilden kanskje savner.

For eksempel finnes det en rekke pakker i Debians repositorier som har rettelser som er brukt på dem. Dette kan til og med inkludere store programmer som nettlesere. Bruker du den beste nettleseren til Linux i 2016? Bruker du den beste nettleseren til Linux i 2016? Å bruke "feil" nettleseren kan føre til mye unødvendig hodepine, bortkastet produktivitet og til og med tapte data. Så hvilken nettleser er best for Linux-datamaskinen din? La oss finne det ut. Les mer !

debian patches

Sammen med dette, må pakker vanligvis følge et strenge sett med regler for å sikre at de kjører på systemet. Både Debian og Ubuntu har en policyhåndbok for eksempel, som mange andre Linux-operativsystemer.

Noen programmer stole også på forskjellige versjoner av samme programvareavhengighet som skal kjøre. Pakkebibliotek gjør sitt beste for å løse disse konfliktene, slik at du ikke trenger å bekymre deg for dette.

Fordeler ved å kompilere kildepakker

Installere programmer fra kilden er ikke noe som alle trenger å gjøre. Faktisk er det best hvis du holder fast med binære pakker. Likevel er det fortsatt noen fordeler med å bruke denne litt mer involverte måten å installere programmer på.

Siste programvare

En ulempe ved å gjøre programmer mer pålitelige er at det tar tid å forbedre og fikse. Som et resultat kan dette føre til at du bruker eldre versjoner av programvare. For folk som vil ha de nyeste og beste 5 Linux-operativsystemene som tilbyr bløderkantoppdateringer 5 Linux-operativsystemer som tilbyr bløderkantoppdateringer Et system som alltid forbedrer og oppdaterer, har fordeler, for eksempel gevinster i fart og sikkerhet. Hvis du er klar til å prøve blødende kanten Linux, er det noen operativsystemer å vurdere. Les mer, de kan til og med foretrekke litt ustabilitet i bytte for det.

Mens det er Linux operativsystemer som imøtekomme dette behovet uten å kompilere programmer, har de noen ulemper. For eksempel, programvare som ikke slipper ut sett pakkeversjoner, er vanskeligere å holde seg oppdatert Hvorfor du alltid bør holde Ubuntu-installasjonen oppdatert [Linux] Hvorfor du alltid bør holde Ubuntu-installasjonen oppdatert [Linux] Les mer i et lager, enn å installere fra kilde.

Dette skyldes at binære pakker vanligvis er laget av offisielle utgivelser av programmer. Som sådan blir det vanligvis ikke tatt hensyn til endringer mellom disse versjonene. Ved å kompilere din egen programvare fra kilde, kan du umiddelbart dra nytte av disse endringene.

Det er også mulig at ditt Linux-operativsystem ikke har den programvaren du vil ha pre-made for deg. Hvis det er tilfelle, er det eneste alternativet du installerer fra kilde.

Velg og velg

En annen fordel ved å bruke kildepakker er at du får mer kontroll over programmene du installerer. Når du installerer fra et binært arkiv, er du begrenset på måter du kan tilpasse pakkene dine på.

For eksempel, se på FFmpeg, kommandolinjebaserte lyd- og videoomformer 10 Great Apps for å konvertere lyd- og videofiler i Linux 10 Great Apps for å konvertere lyd- og videofiler i Linux Les mer. Som standard kommer det med et stort antall funksjoner, hvorav noen kanskje ikke engang berører. For eksempel er JACK lydstøtte tilgjengelig i FFmpeg, selv om denne programvaren vanligvis brukes i produksjonsmiljøer. 6 Linux Distros Designet for artister, musikere og redaktører. 6 Linux Distros Designet for kunstnere, musikere og redaktører. Les mer bare.

ffmpeg funksjoner

Ved å kompilere FFmpeg kan du fjerne de tingene du ikke vil ha fra den, la den være lettere og skreddersydd for dine behov. Og det samme gjelder for andre tungvektsprogrammer.

Når ressursene er knappe, kan fjerning av funksjoner være en fin måte å belaste lasten på. Det er ikke rart at Chrome OS Chrome OS-utfordringen: En ny brukerdag på en Chromebook Chrome OS-utfordringen: En ny brukerdag på en Chromebook Hva er Chromebooks som for noen som har vært vant til Windows eller Mac-oppsett? Som nybegynner i Chrome OS, er jeg her for å fortelle deg. Les mer, funnet på mange low-end datamaskiner, er basert på Gentoo Linux. Gentoo, som er kildebasert, samler mye av programvaren, noe som potensielt gjør disse systemene mye lettere.

Hvorfor ikke installere med begge?

Mens du sannsynligvis ikke vil kompilere pakker på daglig basis, er det noe nyttig å huske på. Hvis du ikke finner programvarevarene dine nokså, husk at det er en annen, eldre måte å få ting installert på.

Har du noen gang hatt å kompilere programvare før? Hvorfor?

Bildekreditt: Andrii Symonenko via Shutterstock.com

In this article