И RedHat, и SUSE имеют давние корпоративные Linux-традиции и смогли изготовить и протестировать эти пакеты. Со временем появится больше примеров пакетов, которые были протестированы для работы в Ubuntu. Фактически, многие такие пакеты с прошлого года проходят тестирование на работу с Ubuntu. Поскольку Canonical заключает соглашения с большим количеством поставщиков, будет больше пакетов, сертифицированных Ubuntu.
Первый вопрос: если вы хотите создать программу, которая будет работать во всех дистрибутивах, создайте статический (по сравнению с динамическим) исполняемый файл. statically-linked
Исполняемый файл не зависит от системных библиотек, поэтому может работать между распределениями, до тех пор , как архитектура (например, Intel / AMD) является тем же самым .
Вот программа,
int main(void)
{
printf("Hello, World!\n");
return 0;
}
Давайте скомпилируем как обычно,
$ 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
$
Итак, что вы можете сделать с этой программой VHDL? Получите файл .rpm и преобразуйте его в .deb, используя иностранца . Затем установите. Если это сработало, ты в порядке. Если это не работает, используйте, ldd
чтобы выяснить, какой файл библиотеки отсутствует. В худшем случае создайте виртуальную машину для других дистрибутивов Linux и запустите программу там.