我在C ++上为诺基亚Harmattan平台实现了一个大型(-ish)GLES2游戏。我想把它移植到iPhone。 (为了记录,它不依赖于任何主要的中间件组件,而是实现自己的渲染循环,触摸处理,计时器等。)
我的想法是将C ++编译为静态库,并使用GLKView和GLKViewController实现包含主循环的瘦Objective-C包装器,并基本挂钩更新和绘制调用下的所有C ++功能(当然还将触摸事件路由到我的代码库中的适当方法。)
问题是:如何为iphone布置项目以便进一步开发它是最不痛苦的?我可以看到三个选项:
1)仅使用makefile等命令行工作(但是,是否可以在命令行上执行所有操作,包括部署到iphone?)
2)使用makefile等将所有C ++代码构建为Xcode外部的静态库,并将其作为makefile或lib.a文件引入Xcode,并在Xcode中使用Objective-C包装。
3)将所有内容放在Xcode下。 (在同一个项目下将包装器和C ++库作为单独的组件维护是多么容易?在Xcode构建系统下移动C ++代码有很多初步的工作吗?)
答案 0 :(得分:0)
我做了类似的事情,最终得到了多个链接的Xcode项目。对于初学者来说,这是(可以说)最简单的。你可以在一个Xcode项目中拥有多个目标,但这有点高级,无论如何都可能不适合你的模块化。您可以轻松地为库创建一个项目,为该应用程序创建一个项目(Xcode将通过一次击键构建它们。)
我不认为尝试复制Xcode对Makefile实际可行的所有东西。那里有太多框架/多个拱门的东西。而且你几乎不得不使用Xcode来获取设备上的东西。