Baik RedHat dan SUSE memiliki tradisi Linux perusahaan yang panjang dan berhasil membuat paket-paket itu diproduksi dan diuji. Seiring berjalannya waktu, akan ada lebih banyak contoh paket yang telah diuji untuk berfungsi di Ubuntu. Bahkan, banyak paket seperti itu sejak tahun lalu datang sebagai diuji untuk bekerja dengan Ubuntu. Saat Canonical membuat perjanjian dengan lebih banyak vendor, akan ada lebih banyak paket bersertifikat Ubuntu.
Untuk pertanyaan pertama Anda: Jika Anda ingin membuat program yang berjalan di semua distribusi, buatlah yang dapat dieksekusi statis (dibandingkan dengan dinamis). Sebuah statically-linked
executable tidak tergantung pada pustaka sistem, oleh karena itu dapat bekerja di antara distribusi, selama arsitektur (seperti Intel / AMD) adalah sama.
Ini adalah sebuah program,
int main(void)
{
printf("Hello, World!\n");
return 0;
}
Mari kita kompilasi seperti biasa,
$ gcc helloworld.c -o helloworld
$ ./helloworld
Hello, World!
$ ldd helloworld
libc.so.6 => /lib/libc.so.6 (0x00007f3cc3481000)
...
$
$ gcc helloworld.c -static -o helloworld_static
$ ./helloworld
Hello, World!
$ ldd helloworld_static
not a dynamic executable
$
Jadi, apa yang dapat Anda lakukan dengan program VHDL itu? Dapatkan file .rpm dan konversikan ke .deb menggunakan alien . Kemudian instal. Jika berhasil, Anda baik-baik saja. Jika tidak berhasil, gunakan ldd
untuk mencari tahu file perpustakaan mana yang hilang. Pada skenario terburuk, buat mesin virtual untuk distribusi Linux lainnya dan jalankan program di sana.