FreeBSD Ports Collection , liksom binära paket , är en teknik för att installera programvara från tredje part på FreeBSD - operativsystemet . En FreeBSD- port för en given applikation är en uppsättning filer utformade för att automatisera processen att kompilera en applikation från källkod . För närvarande har samlingen av hamnar mer än 32 tusen applikationer för olika ändamål. [1] [2]
Termen port är kort för portabilitet, det vill säga portabilitet : samma port kan installeras på maskiner med olika arkitekturer och OS-versioner, medan paket är byggda för en specifik FreeBSD-version och hårdvaruplattform.
De flesta portar tillåter dig att skapa paket (eller "paket" från det engelska paketet - paket, paket), med hjälp av "target" -paketet för verktyget bsd make . Ett paket är ett arkiv som innehåller kompilerade körbara filer och andra nödvändiga filer, samt data och skript för snabb automatisk installation eller borttagning av detta program. Tillsammans med programmet installeras alla beroenden - andra paket med program eller bibliotek som behövs för detta program.
Nackdelen med att distribuera programvara i paket är begränsningen av arkitekturen, såväl som bristen på flexibilitet som är inneboende i portar: komplexa portar kan konfigureras inom en fördefinierad uppsättning inställningar för att stödja utökad funktionalitet, eller, omvänt, för att minska antalet onödiga beroenden. Paket, å andra sidan, är vanligtvis byggda för en (enkla) eller flera populära konfigurationsalternativ. Dessutom förbjuder licensvillkoren för vissa programvarudistributioner omdistribution i binär form, vilket gör distribution av dessa applikationer i paket oacceptabel.
Utöver allt detta, för att säkerställa driftbarhet på det maximala antalet system, monteras paket med konservativa parametrar. Så för x86-arkitekturen är kodgenerering för i486- processorn typiskt , medan kodgenerering för 686-familjens processorer ( Pentium Pro och högre), enligt vissa uppskattningar, kan ge en prestandaökning (i matematiska beräkningar) upp till 20 % och minska storleken på körbara filer. Naturligtvis är sådana finesser kritiska för servrar med stor beräkningsbelastning.
Dessa nackdelar gör paket till ett bra sätt att snabbt installera enkla program som inte har speciella krav.
Ett paket är knutet till ett specifikt utbud av system- och programbiblioteksversioner, så ibland ett kompatibilitetspaket (misc/compat3x; misc/compat4x; misc/compat5x; etc.) . P.). Men behovet av att tillgripa sådana åtgärder uppstår ganska sällan - strax efter lanseringen av en ny version av systemet blir hela uppsättningen paket för x86- och amd64-arkitekturerna som kompilerades för det tillgängliga, enligt tillståndet för portträdet på tidpunkten för utgivningen. Vanligtvis, när en ny version av FreeBSD släpps, byggs ett komplett träd av paket från portar. De mest populära paketen ingår i installationsbilderna. Hela trädet är alltid tillgängligt för mottagning via webben.
En egenskap hos portar är närvaron av två typer av beroenden - B-deps och R-deps.
Således kan upp till flera dussin portar som inte används installeras i systemet - gmake, autoconf, automake, etc. Kommandot pkg autoremove används för att rensa systemet från sådana portar. [3]
FreeBSD-projekt | ||
---|---|---|
människor |
| |
Derivatprojekt _ |
| |
Andra projekt |
|