2012-02-25 62 views
0

是否有任何易于获取的地方?最好是免费的,因为我现在没有任何花费。用于Linux X-Server编程的资源

我正在试图完成

基本上,我写在本地C/C多平台应用++,现在,我已经安装了Linux,我觉得好像我真的准备好让“多平台”发展下去。在任何人说“使用SDL”或“Qt”之前,请注意,我正在为一个我打算商业化的应用程序(Qt花费商业应用程序)这样做。虽然SDL很好,但我也希望了解一般的窗口管理器。我觉得学习如何直接与操作系统进行通信的最佳方式是自己编写应用程序。

那么,那里有没有资源?

回答

2

首先的X-Windows无关的Linux。

X-Windows既是一个图形协议,也是一个建立在它周围的GUI系统。 X可在大多数操作系统上运行,包括Windows和Mac。最典型的情况是X应用程序在运行类UNIX操作系统(例如Linux)的多用户计算机上运行,​​用户可以使用在X终端或桌面上运行的X服务器与它进行交互OS。 X-Server是X-System的标准组件。如果您在Windows上安装X-Server,那么您将能够与在一台或多台其他计算机上运行的图形应用程序进行交互。

听起来好像要重点打造X应用程序,而不是设备驱动程序或服务器或X系统的其他部分。 Linux是最好的选择,但您需要的书籍和文档很可能是使用Solaris或BSD UNIX编写的。但它是相同的API。

因为X至少自90年代初一直深受广大,寻找在二手商店和学校义卖书籍。在Craigslist上刊登X相关书籍。

X的最低级别的API称为Xlib。像GTK和QT这样的工具包在此基础之上,因此学习他们的代码是学习如何做事的好方法。但也有一些称为X-Toolkit的东西可以运行在Xlib上,并曾经是Motif等GUI工具包的基础层。如果我是你,我会从X-Toolkit开始,熟悉X的所有组件以及它们如何交互。例如,需要一段时间才能习惯这样一个事实,即管理X-Server显示屏上窗口的窗口管理器不会在X服务器上运行,而是在远程系统上运行。或者您可以让运行在Linux和OS/X和Solaris上的应用程序全都在单个Windows盒子上的X服务器上显示其窗口。

谷歌X工具箱内在函数来获得各种信息,包括免费的参考手册。

当你阅读更多关于它,你会遇到很多其他的独特的方面,你可以谷歌获得更多的信息和更广阔的视野。不要花太多时间用Athena Widgets或Motif等旧工具包。由于在互联网发展初期有比现在更多的人编程X,所以USENET常见问题解答仍然是一个很好的入门技巧,例如, http://www.faqs.org/faqs/Xt-FAQ/

+0

谢谢。 X服务器是否与Windows中的win32 API最接近? – zeboidlund 2012-02-25 09:05:28

+0

不,X-server是管理显示设备的X的软件组件。当您在一个Linux机器上运行所有内容时,可能会造成混淆,因为X的设计使运行应用程序的CPU与管理显示器(以及kybd和鼠标)的CPU分离。 X Toolkit和Xlib可以让你对Win32 API做很多类似的事情。但是没有等价物 - 这两个GUI在底层非常不同。 – 2012-02-25 09:09:04

2

你可以写你的应用程序,如C.服务器说它引擎。不需要考虑用户界面。之后,您可以在Qt中创建界面。通信协议将是公共的(或私人的),你的Qt应用程序将是开源的。后来如果你喜欢,你可以为你的应用程序创建更多的接口。如Web界面,GNOME界面,C#.NET接口等

+0

这不是一个坏主意,但是,Qt再次花钱。我正在写一些将被封闭的源代码,直到它被发布。从那里,我可以释放来源,当且仅当用户支付。 – zeboidlund 2012-02-25 08:43:57

+0

@Holland No no。您的引擎将被关闭。但界面将开源 – 2012-02-25 09:38:33