我正在尝试使用CMake编译OpenFrameworks示例。但是,到目前为止我还没有成功。我知道在这里提出这个问题有点长,但我正在拼命寻找解决方案。
OpenFrameworks,本身不支持CMake,但是我使用的是开发用于使用Clion构建OpenFrameworks的template,它正在有效地使用CMake。下面是我到目前为止构建示例所遵循的程序的解释。
简介:OpenFrameworks生活here。它是libs / headers和独立核心的汇编。使用Xcode可以很好地构建示例,但是在尝试使用IDE进行构建时,事情很复杂。 OpenFrameworks的结构不是常见的,因此传递头文件和库是一种手工操作。
让我解释一下OpenFrameworks应用程序的构建过程是如何工作的(基于我上面提到的模板):
1)第一个CMakeLists.txt
旨在生活在示例应用程序文件夹中。 CMakeLists.txt
脚本位于here。
2)第二个CMakeLists.txt
旨在提取所有OpenFrameworks库和标题,CMakeLists.txt
脚本位于here。
这个想法是,当你开始构建示例应用程序时,所有OpenFrameworks的部分和部分都将被构建为共享库并被拉入内部。但是,由于某些原因,这不起作用,我收到以下错误。
[ 10%] Performing configure step for 'of_shared'
loading initial cache file /Users/me/dev/cpp_projects/of_sessions/of_3DPrimitivesExample/build/of_shared- prefix/tmp/of_shared-cache.cmake
-- Configuring incomplete, errors occurred!
See also "/Users/me/dev/cpp_projects/of_sessions/of_3DPrimitivesExample/build/of_shared-prefix/src/of_shared-build/CMakeFiles/CMakeOutput.log".
make[2]: *** [of_shared-prefix/src/of_shared-stamp/of_shared-configure] Error 1
make[1]: *** [CMakeFiles/of_shared.dir/all] Error 2
make: *** [all] Error 2
似乎共享构建阶段由于某种原因而失败。不幸的是,OpenFrameworks的复杂的lib / include结构也无济于事。你能帮我理解这里可能出现的问题吗?我已经向项目维护者提交了一个问题,但是,该社区的事情进展有点慢。 (OSX,CMake 2.8.12)
答案 0 :(得分:0)
经过进一步调查,我得到了CMake脚本。我只需要一些时间来了解这些CMake文件正在做什么。我已经调整并调整了一些位。现在我可以构建和编译openFrameworks 0.9.3作为静态库和共享库。
我还成功地使用STATIC和SHARED方法构建和编译3DPrimitivesExample
。所有这些都是使用CMake和VIM完成的。没有使用其他IDE(XCode,QtCreator等)。