Linux GUI开发

问题描述:

我有一个我想要移植到Linux的大型GUI项目。 Linux中用于GUI编程的最受推荐的框架是什么?像KDE/Gnome这样的框架可以用于这个目标还是更好地使用比X更通用的东西?Linux GUI开发

我觉得如果我选择了Gnome或KDE之一,我会关闭市场,因为大部分的Linux市场都选择了这个市场。 (是的,我知道有重叠)

有没有更好的方法?或者我将不得不创建2个完整的GUI应用程序,以获得接近100%的覆盖率?

没有必要有一个跨平台的解决方案,也将在Win32上工作。

您最好的选择是将其移植到跨平台的小部件库,例如wxWidgets,这将为您提供wxWidgets支持的任何平台的可移植性。

将Gnome库和GTK以及KDE库和Qt进行区分也很重要。如果你编写代码来使用GTK或Qt,它应该适用于任何桌面环境的用户,包括XFCE等不太受欢迎的用户。如果您使用其他Gnome或KDE特定的库来执行与窗口小部件无关的任务,那么您的应用在桌面环境之间的便携性会降低。

Gnome应用程序可用于KDE桌面,反之亦然;你不会锁定任何人。就工具箱而言,这是相当主观的。所有的工具包都是相当跨平台的。如果你不是开放源代码,那么GTK +会是更便宜的选择,因为Qt只对开源使用免费,而GTK +则是LGPL。

+5

更新:时下也Qt是LGPL:http://www.qtsoftware.com/about/licensing/frequently-asked-questions – Jonik 2009-05-08 19:51:40

+0

确实。这比以前的情况有了很大的改进。 – Bernard 2009-10-06 07:01:42

你有没有想过使用单声道?诸如Paint.NET之类的程序在Windows的& Windows下工作良好。

我推荐wxWidgetsQt。它们都是成熟的,结构良好的和跨平台的,具有体面的文档和示例源代码。