C++ 使用Qt为Linux创建软件:发行版、桌面环境和其他决策

C++ 使用Qt为Linux创建软件:发行版、桌面环境和其他决策,c++,linux,qt,distro,C++,Linux,Qt,Distro,我想开始一个个人项目的工作,我想让它跨平台。我所有的Linux工作都是为商业客户完成的,所以目标发行版是预先指定的,但这是不同的 该项目将是开源的,并使用Qt。我想知道的是: 如果我在一个发行版上进行dev+测试,或者应该在多个发行版上进行测试,这就足够了吗?根据我的经验,如果没有测试,它就不起作用, 但另一方面,我负担不起为每个发行版进行构建和测试,特别是因为这将是一个爱好项目 假设我选择了使用KDE的发行版X。对于使用Gnome发行版的人来说,使用我的程序有多困难 使用Gnome的人会使用我

我想开始一个个人项目的工作,我想让它跨平台。我所有的Linux工作都是为商业客户完成的,所以目标发行版是预先指定的,但这是不同的

该项目将是开源的,并使用Qt。我想知道的是:

  • 如果我在一个发行版上进行dev+测试,或者应该在多个发行版上进行测试,这就足够了吗?根据我的经验,如果没有测试,它就不起作用, 但另一方面,我负担不起为每个发行版进行构建和测试,特别是因为这将是一个爱好项目

  • 假设我选择了使用KDE的发行版X。对于使用Gnome发行版的人来说,使用我的程序有多困难

  • 使用Gnome的人会使用我的Qt程序吗?还是会因为它是用Qt编写的而感到厌烦?让我们假设他们发现它很有用。Qt-Gnome集成有多好

  • 我也必须发送二进制文件吗?现在的趋势是什么:来源还是来源+垃圾桶

  • 我希望能举一些在Linux上使用Qt开源项目的个人例子。 谢谢

  • 我将使用不同的打包系统(apt、rpm等)在几个不同的发行版上进行测试。其他任何内容都应根据具体情况进行测试

  • Qt应用程序的一个示例是umbrello UML建模工具。ubuntu用户所要做的就是
    sudo-apt-get-install-umbrello
    。即使您没有准备好包,也可以使用类似的命令设置Qt,以便可以执行二进制文件

  • 我的印象是,人们倾向于使用一个widget工具包(GTK代表gnome,Qt代表KDE),但另一方面,我会惊讶地发现有人仅仅因为这个工具包而没有使用他/她所需要的好应用程序

  • 源代码和二进制文件的单独包。二进制文件与用户文档一起使用,源文件与开发文档一起使用

  • 我认为你应该在不同的发行版上测试它。可能会坚持使用最流行的:Ubuntu、Fedora、OpenSuse、Slackware、CentOS/RHE。您可以使用VirtualBox或VMWare player以及免费提供的虚拟机来测试其他发行版(而不是使用5+个单独的分区)。另一种选择是,只为正在开发的发行版提供二进制文件,并为其他发行版提供源代码+说明(如何构建)

  • 如果您使用一些包管理器(RPM、APT-GET)来分发二进制文件,那么如果尚未安装缺少的包,它将安装这些包(例如:默认情况下使用Gnome的发行版上的Qt4)。看看哪一个可以轻松地为Debian、RedHat和Slackware生成包

  • 我不认为这是一个表演的障碍。如果您的应用程序是健壮的、设计良好的和有用的,那么桌面外观集成就不应该是一个问题。。。您还可以使用来确保应用程序在Gnome上看起来正确

  • 大多数开源项目为最流行的发行版提供二进制文件,也为其他发行版提供源代码(因此他们可以手工构建应用程序)