当前位置:  开发笔记 > 编程语言 > 正文

将C++代码移植到MacOS有哪些建议?

如何解决《将C++代码移植到MacOS有哪些建议?》经验,为你挑选了1个好方法。

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

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



1> akauppi..:

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

如果没有,需要注意的问题(与Linux相比)主要在动态链接区域.OS X使用'-dylib'和'-bundle',实际上有两种动态库(运行时可加载和正常运行).Linux只有一种(共享),并且在此方面更宽松.

如果你的应用程序有GUI,你需要使用Objective-C在Cocoa中重新编写整个内容.这意味着你也将成为一门新语言.有些人(比如MS)使用过Carbon(C++ API),但它正在逐步淘汰.我不建议新项目.

你最好的运气是使用Qt或Gtk +.几天前(重新)宣布了一个原生的Gtk +端口(参见Imendio).

ps OS X当然也会运行X11二进制文件,但将其推送给任何客户可能都是一条艰难的道路.他们已经习惯了Aqua界面,并且很有效率.考虑X11只是一个非常短期的解决方案.

pps OS X附带的开源外接库的数量有限,而且它们的版本可能缺乏.在Linux中,您可以轻松地要求用户安装"libxxx vyy",在OS X中有多种打包方法(fink,macports),而对于商业工具,所需的库应该包含在应用程序中.OS X为此提供了"应用程序包"和"框架"(本地副本,使应用程序自给自足).Linux没有这样的概念.这对你的构建系统也有很大的影响; 也许你会想为所有平台尝试像SCons这样的东西?

推荐阅读
女女的家_747
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有