2010-10-24 101 views
2

GUI应用程序为Win/Linux的/ Mac上的C/C++:纯GUI应用程序为Win/Linux的/ Mac上用C++与G ++

我想知道如何写一个”,“ native,“”API级别适用于Windows,Linux和Mac的C++应用程序。

我不希望“单一代码在任何地方运行”,而是每个操作系统的本机代码。


解决方案对于Windows:

只需使用Mingw/Win32 API;它非常简单明了。这样我喜欢在Windows下编程。


解决方案对于Linux:

如果我使用,例如,wxWidgets-dev/GNU G++,我的应用程序不能在PC/Linux上运行,如果用户没有安装wxWidgets?如果不是,我如何在程序中包含wxWidgets库?


解决方案适用于Mac:

Objective-C++/GNU G++解决?或者是Carbon/C++/GNU G++的解决方案?

+0

Windows = easy,mac = difficult,linux =? – 2010-10-24 20:44:33

+0

否否否lool,Windows =非常简单,Linux = easy,Mac =? – Freeseif 2010-10-25 00:16:27

+0

如果您发现Linux开发很容易,您会发现Mac开发很容易。 XCode其实很不错,即使其他所有的都失败了,只要打开一个终端并运行'make'或'cmake'或类似于Linux的东西。 – 2010-10-25 20:06:23

回答

4

Mac

在Mac的情况下,您只需要启动XCode并使用Objective-C。 Objective-C++主要用于让您从Objective-C访问现有的C++库。

不要使用碳,它已被弃用。它只是为了使从Mac OS 9移植更容易。

Linux

这一个是艰难的,因为真的没有什么保证。您可以确信X Windows将会在那里,但是可能有或者没有可用的各种库(Gnome,KDE,WxWidgets,FLTK,Motif等)。在过去,你可能会期望Athena widgets可用,因为它们随X Windows一起发布,但它们看起来很蹩脚(介于Mac OS 3和Palm OS 1之间),几乎没有人想再使用它们了。 。

所以你几乎必须选择一个库/工具包并使用它,并期望你的用户来安装它。现在大多数发行版很容易安装依赖项,所以它不像在Windows上安装wxWidgets那样烦人。

+1

的确,Linux上没有真正的“标准”库,但Qt和GTK +是非常安全的投注,所有主要发行版都有它们的默认值桌面安装。其他人也不应该成为问题,因为所有发行版都可以轻松安装。 – sleske 2010-10-24 20:40:02

+0

Mac:Objective-C/Cocoa。 Linux:GTK +/C/C++。 – Freeseif 2010-10-25 00:17:45

+0

谢谢Mike DeSimone和Sleske和Alexander Rafferty =) – Freeseif 2010-10-25 00:18:27