在我从事软件开发的多年中,自从Linux迅速普及以来,足以保证商业软件供应商可以将其软件移植到其中以来,我已经看到供应商遇到麻烦的一件事就是处理大量不同的Linux版本。当我们还是Windows和Unix(如果愿意的话,是商业* nix)时,生活就变得更加轻松。操作系统供应商确保对发行版进行良好定义,以便我们可以轻松地为我们的产品提供合理的受支持版本列表。

使用Linux,几乎做到这一点几乎是不可能的。 Novell和Red Hat确实扮演着商业Linux供应商的角色,它们为Linux发行版中所有软件包的版本提供认可标志。但是,实际上,我所知道的使用Linux的开发人员中没有一个使用任何这些商业Linux。他们正在使用Fedora,OpenSuSE和最近的Ubuntu。确实不可能针对客户可能要使用的所有可能的Linux组合来验证您的产品。

但是,我再问一个问题,那又如何呢?无论如何,这些发行版有多么不同,使得支持Linux变得如此困难。是的,您的软件包可能存在版本差异,GTK的主要版本之类的内容可能会在Eclipse之类的GUI应用程序下崩溃。另外,设置用户环境变量的不同方法的数量也很令人困惑,但是应用程序无论如何都不应依赖它。我真的很想知道是否还有其他因素会影响大多数软件产品。

每当有人尝试解释一个错误时,都会感到烦恼,抱歉,该版本的Linux不是参考平台,因此我们无法查看您的问题,尤其是当该人使用的是Ubuntu之类的最新发行版时。但这确实说明了软件供应商在Linux市场分散化方面所面临的挑战。但是我想这是我们为“自由”付出的代价的一部分。