我无法忍受XCode,但我真的很喜欢OpenFrameworks,我知道它适用于Linux + Win32,所以我不明白为什么应该依赖于XCode。如果我需要安装XCode那么好,我根本不想使用它。
答案 0 :(得分:11)
Xcode内部使用gcc / llvm。事实上,从命令行可以cd到包含openFrameworks项目的目录中,只需键入xcodebuild
即可。但是这不允许您编辑项目文件并添加新的源代码等。
Linux makefile也可以适用于OSX。它们已经包含了很多关于查找正确的源文件,库路径等所需的信息。但Linux允许我们安装更多的组件作为共享系统库,而在OSX上我们静态链接大多数库,所以额外的一些需要添加库路径。可能最大的问题是所有东西都必须编译32位,这意味着在任何地方传递-arch i386
,所以你不能只使用Homebrew或MacPorts安装依赖库。我们正在转换到64位,但仍有一些QuickTime调用要求我们坚持使用32位,主要是访问我们很多人仍然用于计算机视觉的传统视频捕获设备。
如果您确实使用基于makefile的构建系统,并且有兴趣从中长期维护它,请考虑将其贡献给GitHub存储库,它会很乐意接受。
答案 1 :(得分:5)
As of March 2013,openFrameworks支持编译库本身的官方makefile。但是,在撰写本文时,这些更改尚未合并到稳定版本中。您需要克隆Git repository并切换到开发分支。
git clone https://github.com/openframeworks/openFrameworks
cd openFrameworks && git checkout develop
cd libs/openFrameworksCompiled/project
make
据我所知,我们仍然需要使用非官方解决方案来针对库编译应用程序。
答案 2 :(得分:2)
您需要Xcode,或者至少需要一组编译器(更多信息可用here),否则,您可以在任何编辑器或环境中编辑/使用代码。
答案 3 :(得分:2)
这是一个makefile的链接,它将在OsX上编译OpenFrameworks应用程序:
https://gist.github.com/labe-me/1190981
将makefile放在apps的目录中并运行make。在OsX 10.6上测试过,但尚未尝试使用插件。
答案 4 :(得分:1)
正如@mipadi所说,没有要求实际使用Xcode,你可以使用make或cake或任何你选择的构建系统来完成你在Xcode中所做的一切。您所要做的就是找到正确的命令行选项集以传递给常用工具(编译器,链接器,条带等),有时更简单的方法是...在Xcode构建窗口中查看它是如何工作的做东西(用每行右边的小按钮展开线条)。
例如,您可以使用ld -framework Framework -FPathToFramework foo.o或使用ld -lLib -LPathToDylib foo.o的动态库链接您选择的框架。您可能需要了解@rpath,@ download_path和install_name_tool以发布自包含的打包应用程序。
对于OpenFrameworks,Xcode的“要求”是作者决定只维护Xcode项目文件。我只是看看他们是如何做到的,他们发布了构建静态库的源代码和Xcode项目文件,所以它会更加简单(尽管你需要手动链接库依赖项)。您必须在构建系统中从源代码编译所有内容(如果您想要更多自定义功能而不触及Xcode),或者只使用Xcode生成2个静态库(openFrameworks.a和openFrameworksDebug.a),然后在你的构建系统(推荐,直到你真的需要连续定制)。