Kompilere ved hjelp av Makepkg
Pakke raskere
Hopp over verifisering av PGP-signatur
Hvis du bruker makepkgdirekte, forurenser det systemet ditt noe. Den base-develpakken gruppen må være installert. På denne måten blir avhengigheter som bare er nødvendig for å bygge pakken, men som ikke er nødvendige for å bruke den, installert. Denne standardoppførselen kan endres, men dette innebærer å installere og avinstallere pakker og forurense /var/log/pacman.log.
Se denne artikkelen for å forstå og bruke AUR generelt, inkludert innhenting av PKGBUILD. Dette dokumentet viser bare trinnene som er spesifikke for makepkg, hvis det er metoden du velger for å kompilere en pakke.
Kompilere ved hjelp av Makepkg
Hvis base-develpakkegruppen ikke allerede er installert, må du installere den. Hvis du ikke gjør det, makepkgvil den anta at den allerede er installert, og hvis en pakke i den er nødvendig, men ikke installert, vil den ganske enkelt mislykkes i stedet for å installere den for deg. makepkgselv er en del av pacmanpakken, allerede installert.
# pacman -S base-devel
Du må kjøre makepkgi katalogen med PKGBUILD, katalogen laget av git clone. Som standard vil den laste ned den faktiske kildekoden, kompilere pakken og pakke den.
Det er mange alternativer for makepkg, inkludert disse ofte brukte:
-s, --syncdeps : Installer automatisk manglende avhengigheter som kreves for å bygge og bruke pakken.
- Merk at hvis den
PKGBUILDhar avhengigheter av AUR-pakker, må du installere disse først, eller ha dem tilgjengelige i et eget lokalt depot slik at det kan finne dem.
-r, --rmdeps : Hvis den bygger vellykket, avinstallerer du automatisk avhengigheter som ikke lenger er nødvendige, inkludert følgende:
- De som kreves for å bygge, men ikke bruke pakken.
- Hvis de brukes uten
--installopsjon, de som kreves for å bruke pakken.
-i, --install : Hvis den bygger vellykket, installer/oppgrader pakken automatisk.
-c, --clean : Slett automatisk midlertidige byggefiler, vanligvis bare nødvendig når du feilsøker en build som har gått galt.
For å installere/oppgradere pakken automatisk, la avhengigheter være installert for bruk av pakken, og fjern avhengigheter som bare er nødvendig under bygging, kjør:
# makepkg -sri
Alternativt kan du velge å ikke installere den automatisk, og la alle avhengigheter være installert, så hvis du pakker en oppgradering en dag, er de allerede installert:
# makepkg -s
Du kan da enten bruke et Local Repository som forklart her , eller installere filen direkte:
# pacman -U <PKGNAME>-<PKGVER>-<PKGREL>-<ARCH>.pkg.tar.xz
Pakke raskere
makepkgKombinerer som standard en hel pakke til et arkivformat; lage en .tar.xzfil ved å bruke en enkelt tråd for xzkomprimeringen.
På multi CPU-systemer kan du tillate xzå bruke flere tråder ved å redigere /etc/makepkg.conf, og endre følgende linje:
COMPRESSXZ=(xz -c -z -)
Du kan tillate så mange tråder som du har virtuelle kjerner:
COMPRESSXZ=(xz -c -z - --threads=0)
For å tillate bruk av flere virtuelle kjerner, men ikke alle, for å redusere innvirkningen på den generelle systemytelsen, legg til et spesifikt tall, for eksempel følgende:
COMPRESSXZ=(xz -c -z - --threads=21)
Merk: Hvis du spesifiserer flere tråder enn antallet virtuelle kjerner du har, reduseres ytelsen.
Hvis du ikke har noe imot at pakkefilen er (potensielt mye) større, deaktiver komprimering ved å redigere /etc/makepkg.conf, og endre følgende linje:
PKGEXT='.pkg.tar.xz'
Det skal se slik ut:
PKGEXT='.pkg.tar'
Hopp over verifisering av PGP-signatur
Det anbefales å verifisere og legge til PGP-signaturer som brukes på riktig måte, som forklart her i avsnittet "PGP-signaturfeil".
Men hvis du kjører makepkgdirekte, kan du gi den --skippgpcheckmuligheten til å hoppe over å bekrefte PGP-signaturen.