对于移植C++;MacOS的代码? 对于即将到来的项目,有计划将现有的C++代码编译到Windows和Linux上,并将其移植到MaOS(Leopar)。该软件是命令行应用程序,但可能计划使用GUI前端。MacOS使用g++编译器。通过使用与Linux相同的编译器,似乎不会有任何问题,但总会有问题

对于移植C++;MacOS的代码? 对于即将到来的项目,有计划将现有的C++代码编译到Windows和Linux上,并将其移植到MaOS(Leopar)。该软件是命令行应用程序,但可能计划使用GUI前端。MacOS使用g++编译器。通过使用与Linux相同的编译器,似乎不会有任何问题,但总会有问题,c++,macos,g++,portability,C++,Macos,G++,Portability,在港口期间,是否有任何建议或问题需要注意 我们没有移植到MacOS,但是已经从Linux移植到了各种Unix,主要的工作领域是安装和启动系统,因此希望将大部分工作放在那里(考虑到您现有的GUI已经可以在Linux和Windows之间移植)。您的应用程序是否有GUI,以及哪一个(native/Qt/Gtk+ 如果不是,那么要注意的问题(与Linux相比)主要在动态链接领域。OSX使用'-dylib'和'-bundle',实际上有两种动态库(运行时可加载库和普通库)。Linux只有一种(-share

在港口期间,是否有任何建议或问题需要注意

我们没有移植到MacOS,但是已经从Linux移植到了各种Unix,主要的工作领域是安装和启动系统,因此希望将大部分工作放在那里(考虑到您现有的GUI已经可以在Linux和Windows之间移植)。

您的应用程序是否有GUI,以及哪一个(native/Qt/Gtk+

如果不是,那么要注意的问题(与Linux相比)主要在动态链接领域。OSX使用'-dylib'和'-bundle',实际上有两种动态库(运行时可加载库和普通库)。Linux只有一种(-shared),而且在这方面更为宽松

如果你的应用程序有一个GUI,你需要使用Objective-C用Cocoa重新编码整个过程。这意味着你也将进入一种新的语言。一些人(比如微软)已经使用了碳(C++API),但它正在被淘汰。我不会向新项目推荐这一点

您最好使用Qt或Gtk+。几天前刚刚(重新)宣布了一个本机Gtk+端口(请参阅)

p、 美国。 OSX当然也运行X11二进制文件,但将其推广给任何客户都可能是一条艰难的道路。他们习惯于水性界面,并且有效率。考虑X11只是一个非常短期的解决方案。
p、 另外,OSX附带的开源插件库数量有限,它们的版本可能会落后。在Linux中,您可以轻松地要求用户安装“libxxx v.y.y”,而在OS X中,有多种打包方法(fink、macports),对于商业工具,所需的库预计将包含在应用程序中。OSX为此提供了“应用程序包”和“框架”(本地副本,使应用程序自给自足)。Linux没有这样的概念。这也会对你的构建系统产生很大的影响;也许你会想在所有平台上尝试类似的东西?

Macintosh(macosx)本质上是免费的BSD(尽管它已经过调整)。Linux和FreeBSD在系统编程方面存在一些差异。这些差异主要存在于各种系统调用之间。。。因此,这对您的影响程度将取决于您的应用程序正在做什么,以及您在执行过程中进行的操作系统调用类型

> P>你不需要把所有东西都重新编码成Objto-C。C++和ObjuleC有一个奇怪的错误,它允许你使用ObjuleC中的C++代码,这样你就可以智能地将C++中的模型代码和Objtovior C中的视图/控制器代码分开,使用Objto-C,只需用Max代替M。你可以在同一行上混合大多数合法C++和Objy-C语法。

为什么不把核心代码保存在C++中并重写Objtovi-C中的GUI代码?是的,这实际上是要走的路。我的“你必须用可可粉把整件事都写下来”是夸张了。