Jika anda menggunakan makepkgsecara langsung, ia mencemari sistem anda. Kumpulan base-develpakej mesti dipasang. Dengan cara ini, secara lalai, kebergantungan yang diperlukan hanya untuk membina pakej, tetapi tidak diperlukan untuk menggunakannya, akan dibiarkan dipasang. Tingkah laku lalai ini dapat diubah, tetapi ini melibatkan memasang dan menyahpasang pakej dan mencemarkan anda /var/log/pacman.log.
Rujuk artikel ini untuk memahami dan menggunakan AUR pada amnya, termasuk mendapatkan PKGBUILD. Dokumen ini hanya menunjukkan langkah-langkah khusus untuk makepkg, jika kaedah yang anda pilih untuk menyusun pakej.
Menyusun Menggunakan Makepkg
Sekiranya base-develkumpulan pakej belum dipasang, anda perlu memasangnya. Jika anda tidak, makepkgakan menganggap ia sudah dipasang, dan jika pakej di dalamnya diperlukan tetapi tidak dipasang, ia hanya akan gagal dan bukannya memasangnya untuk anda. makepkgitu sendiri adalah sebahagian daripada pacmanpakej, sudah dipasang.
# pacman -S base-devel
Anda perlu menjalankan makepkgdalam direktori dengan PKGBUILD, direktori yang dibuat oleh git clone. Secara lalai, ia akan memuat turun kod sumber sebenar, menyusun pakej, dan pakejnya.
Terdapat banyak pilihan makepkg, termasuk yang biasa digunakan:
-s, --syncdeps : Pasang kebergantungan yang hilang secara automatik yang diperlukan untuk membina dan menggunakan pakej.
- Perhatikan jika
PKGBUILDterdapat kebergantungan pada pakej AUR, anda perlu memasangnya terlebih dahulu atau menyediakannya di repositori tempatan anda sendiri sehingga dapat menemuinya.
-r, --rmdeps : Sekiranya berjaya dibina, nyahpasang kebergantungan secara automatik yang tidak diperlukan lagi, termasuk yang berikut:
- Orang yang diperlukan untuk membina tetapi tidak menggunakan bungkusan.
- Sekiranya digunakan tanpa
--installpilihan, yang diperlukan untuk menggunakan pakej.
-i, --install : Sekiranya berjaya dibina, pasang / tingkatkan pakej secara automatik.
-c, --clean : Padamkan fail binaan sementara secara automatik, biasanya hanya diperlukan ketika melakukan debug pada binaan yang salah.
Untuk memasang / menaik taraf pakej secara automatik, biarkan pergantungan dipasang untuk menggunakan pakej, dan hapus pergantungan yang hanya diperlukan semasa membina, jalankan:
# makepkg -sri
Sebagai alternatif, anda boleh memilih untuk tidak memasangnya secara automatik, dan membiarkan semua pergantungan dipasang, jadi jika anda mengemas kini suatu hari nanti, mereka sudah terpasang:
# makepkg -s
Anda kemudiannya boleh menggunakan Repositori Tempatan seperti yang dijelaskan di sini , atau memasang fail secara langsung:
# pacman -U <PKGNAME>-<PKGVER>-<PKGREL>-<ARCH>.pkg.tar.xz
Pakej Lebih Cepat
Secara lalai, makepkgmenggabungkan keseluruhan pakej ke dalam format arkib; membuat .tar.xzfail menggunakan satu thread untuk xzpemampatan.
Pada sistem multi CPU, anda boleh membenarkan xzpenggunaan beberapa utas dengan mengedit /etc/makepkg.conf, dan mengubah baris berikut:
COMPRESSXZ=(xz -c -z -)
Anda boleh benarkan banyak benang kerana anda mempunyai teras maya:
COMPRESSXZ=(xz -c -z - --threads=0)
Untuk membenarkan penggunaan beberapa teras maya, tetapi tidak semuanya, seperti mengurangkan kesan terhadap keseluruhan prestasi sistem, tambahkan nombor tertentu, seperti berikut:
COMPRESSXZ=(xz -c -z - --threads=21)
Nota: Menentukan lebih banyak benang daripada jumlah teras maya yang anda akan menurunkan prestasi.
Jika anda tidak keberatan fail pakej sedang (berpotensi banyak) lebih besar, matikan pemampatan dengan mengedit /etc/makepkg.conf, dan ubah baris berikut:
PKGEXT='.pkg.tar.xz'
Ia harus kelihatan seperti berikut:
PKGEXT='.pkg.tar'
Langkau Mengesahkan Tandatangan PGP
Sebaiknya verifikasi dan tambahkan tandatangan PGP yang digunakan dengan betul, seperti yang dijelaskan di sini di bahagian "Ralat Tandatangan PGP".
Walau bagaimanapun, jika anda menjalankan makepkgsecara langsung, anda boleh memberikan --skippgpcheckpilihan untuk melewatkan tanda tangan PGP.