Seberapa berbeda kompilasi kode sumber di Debian GNU / Hurd dari Debian GNU / Linux?

9

Saya mencoba untuk mengkompilasi libnetfilter_conntracksumber dari github seperti yang diminta oleh iptablessaat mengkompilasi iptables dan karena semua ini tidak tersedia dalam repo perangkat lunak HURD dan berakhir dalam kesalahan saat mengkonfigurasilibnetfilter_conntrack

checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking whether ln -s works... yes
configure: error: Linux only, dude!

dan kernel saya adalah,

$ uname -a
GNU debian 0.9 GNU-Mach 1.8+git20190109-486/Hurd-0.9 i686-AT386 GNU

dan tujuan utama saya adalah mengkompilasi iproute2 .

Pavel Sayekat
sumber
11
Masalahnya di sini bukan perbedaan antara kompilasi di Hurd dan Linux: Apakah Anda mencoba untuk mengkompilasi firewall yang hanya Linux dan lib pada OS lain.
1
Mungkin yang Anda cari adalah program baru di GNU / Hurd yang antarmuka perintahnya mirip dengan program iptablesdan iproute2. Ini mungkin menjadi mungkin sebagai jaringan (IPv4 dan IPv6) yang sedang dikonfigurasi serupa. Dalam hal ini lihat sumber dari program yang setara pada GNU / Hurd dan tulis antarmuka baris perintah baru untuk mereka.
Kapil

Jawaban:

24

Secara umum, itu tidak jauh berbeda; ada daftar perangkap yang dikenal di situs Hurd dan di wiki Debian . Banyak proyek dibangun dengan baik, atau setelah beberapa perbaikan (masalah yang paling umum adalah tidak adanya PATH_MAX).

Namun dalam kasus Anda, Anda akan merasa sulit untuk pergi ke mana pun: netfilterdan iptableskhusus untuk kernel Linux, sehingga Anda tidak akan dapat menggunakannya di Hurd. Anda mungkin telah memperhatikan bahwa yang iptablespaket tidak tersedia padahurd-i386 - biasanya ada alasan yang baik untuk itu ... iproute2juga Linux-spesifik.

Pada Hurd yang akan Anda gunakan eth-filtersebagai gantinya, lihat bagian jaringan dari panduan konfigurasi Debian GNU / Hurd untuk detailnya.

Stephen Kitt
sumber
12
@ PavelSayekat Menggunakan firewall yang tidak khusus ditulis untuk Linux?
Kusalananda
5
@PavelSayekat Anda selalu dapat mem-port libraries / program ke yang lain Selamat coding untuk beberapa tahun ke depan!
Giacomo Alzetta
1
@GiacomoAlzetta tidak akan berfungsi, karena pustaka dan program hanyalah setengah dari implementasi dari userspace; mereka berbicara dengan modul kernel Linux tertentu, jadi ini tidak akan mungkin terjadi.
mirabilos
4
@mirabilos kecuali seseorang menambahkan dukungan "kernel" di Hurd juga ;-).
Stephen Kitt
1
@StephenKitt prinsip Hurd lebih suka membuatnya menjadi penerjemah yang kemudian berbicara ke penerjemah jaringan. Tidak ada kernel yang terlibat, pada dasarnya hanya mengirimkan pesan. (Oh, dan saya lebih suka port pf dari OpenBSD daripada apa pun yang Linux gunakan hari ini ... ☺)
mirabilos