Mengapa tidak ada paket -dev di Arch Linux?

28

Saya mengerti bahwa distribusi berbasis sumber seperti Gentoo atau Slackware tidak memerlukan *-devversi program. Mereka menyertakan kode sumber serta file header untuk mengkompilasi semuanya secara lokal.

Tapi saya tidak pernah melihat *-devpaket di Arch Linux , meskipun itu berbasis paket. Saya menemukan banyak *-devpaket di distribusi lain.

Sebastian
sumber

Jawaban:

30

Paket -dev biasanya berisi file header, contoh, dokumentasi dan semacamnya, yang tidak diperlukan untuk hanya menjalankan program (atau menggunakan pustaka sebagai ketergantungan). Mereka ditinggalkan untuk menghemat ruang.

ArchLinux biasanya hanya mengirimkan file-file ini dengan paket itu sendiri. Biaya ini sedikit lebih banyak ruang disk untuk instalasi tetapi mengurangi jumlah paket yang harus Anda kelola.

antje-m
sumber
1
Halo, terima kasih atas jawaban Anda. Saya pikir Anda benar, karena saya perhatikan di Arch Linux saya dapat langsung mengkompilasi paket (tidak perlu menginstal -devpaket). Bisakah Anda memasukkan satu referensi?
Sebastian
3
Referensi yang paling penting jika mungkin The Arch Way dan prinsip Kesederhanaan - membuat -devpaket sebenarnya berarti membangun paket dan menghapus file include. Namun paket Archlinux termasuk paket yang dibuat (misalnya dengan menjalankan make) tanpa menyentuhnya sesudahnya. Ada pengecualian untuk aturan ini, tetapi saya tidak bisa memikirkan satu yang relevan dengan pertanyaan ini.
Wieland
4

Jika Anda ingin mengedit sumber paket standar dan mengompilasinya sendiri, Anda harus menggunakan ABS (Arch Build System). Dikutip dari Arch Linux Wiki :

Singkatnya, Arch Build System, adalah sistem seperti port untuk membangun dan mengemas perangkat lunak dari kode sumber. Sementara pacman adalah alat Arch khusus untuk manajemen paket biner (termasuk paket yang dibuat dengan ABS), ABS adalah kumpulan alat untuk mengkompilasi sumber ke dalam paket .pkg.tar.gz / .pkg.tar.xz yang dapat diinstal.

Ini adalah metode yang disarankan saat menggunakan Arch Linux.

Jason Axelson
sumber
1
Anda membingungkan paket dev dengan paket src. paket src memungkinkan Anda membangun kembali paket itu sendiri. paket dev memungkinkan Anda membangun sesuatu yang tergantung pada paket tersebut.
Matthew Marshall
@ MatthewMarshall Anda benar. Meskipun setidaknya ABS terkait dengan pertanyaan itu.
Jason Axelson