我想通过在不同的操作系统版本中安装它来测试我的程序。我的开发电脑是Ubuntu。我可以通过在VirtualBox中安装它们并在那里运行我的程序来测试其他哪些Linux版本?在不同的操作系统中测试程序
虽然现在对我来说并不重要,但我想尝试一些不同的事情,看看会发生什么。
此外,Linux中运行的程序在Unix操作系统中有什么机会?该程序不是开源的,我只能分发预构建的二进制文件。
我想通过在不同的操作系统版本中安装它来测试我的程序。我的开发电脑是Ubuntu。我可以通过在VirtualBox中安装它们并在那里运行我的程序来测试其他哪些Linux版本?在不同的操作系统中测试程序
虽然现在对我来说并不重要,但我想尝试一些不同的事情,看看会发生什么。
此外,Linux中运行的程序在Unix操作系统中有什么机会?该程序不是开源的,我只能分发预构建的二进制文件。
让我们从顶部开始。你已经用一些编程语言在一些Linux发行版上构建了一个程序。你没有告诉我们哪个。
如果它在C中,那么你的前两个问题是硬件和glibc。通过硬件,我的主要意思是32位与64位,但也值得注意的是Linux可以在PPC,ARM和SPARC上运行。
如果您有一个64位系统,您可以运行一个32位虚拟机并进行测试。
写入较新版本的glibc的程序通常适用于旧版本,但不是相反。所以,如果你需要支持一个较老的发行版,你必须在那里建立。
对于大多数程序,glibc版本是内核版本的充分替代品,但是如果您足够努力地工作,您也可以创建内核版本依赖性。
如果你的程序是C++,那么你有一个额外的担心:C++/libstdC++运行时。并非所有发行版都具有运行所有可能程序所需的共享库。
在某些情况下,编译并链接到较旧版本的g ++的程序无法在较新的发行版中找到它所需的libstdC++。
然后你提到'Unix'。在现代世界中,没有任何实际意义上的Unix这样的东西。有几种系统可能需要支持,你可能会担心这里>
在整个动物园里工作的维护代码是一项很大的工作,不要轻易承担。
没有单一的“Unix操作系统”。您可以在虚拟机中设置FreeBSD或类似软件,以便使用非Linux操作系统进行测试。
如果您的应用程序是封闭源代码,您需要想出一个分配应用程序的好方法。你将不得不指定所需的库等东西。另外,您可能需要为各种体系结构(arm,x86,x64等)提供大量的构建。有很多Linux发行版和Unix变体--RedHat,SuSE,Debian,FreeBSD等等。你将有很多组合来解决。