cmake是什么做
What does cmake .. do?
我得到了Box2D项目源代码,并想编译它的测试台部分。项目文件夹包含如下文件夹:freeglu-guli-testbed(一个演示)helloword(一个示例)Box2D构建CMakeFiles
在所有不同的文件夹中都有许多CMakeLists.txt。我想我应该cmake所有这些文件,这样make文件就可以在所有需要的地方创建。我读了这个(作为做我想做的事的说明):
wget http://box2d.googlecode.com/files/Box2D_v2.2.1.zip
unzip Box2D_v2.2.1.zip
cd Box2D_v2.2.1/Build
cmake ..
make
cmake是什么。。做生成文件夹中没有CMakeLists.txt。
cmake是一个Makefile生成器。
当您调用cmake [path]
时,您要求它按照[path]/CMakeLists.txt
中给出的说明在当前目录中生成Makefile
通常cmake在工作时会输出一些消息,在没有错误的情况下完成后,您可以键入"make"来执行新创建的Makefile。
CMakeLists.txt文件可以引用子目录中的其他CMakeLists.txt文件,因此您通常只对top目录的CMakeLists.txt感兴趣,而对其他文件不感兴趣。
使用一个空的"构建"目录是一种称为"源代码外构建"的技术,在这种技术中,所有生成的文件(.o、可执行文件、Makefile、.enything)都是在单独的"编译"目录中生成的,而不是与源文件混合。如果要清除所有内容,可以删除生成目录的所有内容。
事实上,你可以把你的"构建"目录放在任何地方,只要你给cmake顶部CMakeLists.txt的正确路径。你甚至可以有几个构建目录。如果您同时需要几个不同的构建(具有不同的选项、不同版本的gcc等),这是非常有用的
在旧程序中,您也可以生成Makefile,但使用./configure
(这被称为自动工具。您可能已经遇到过了)。cmake被认为是汽车工具的继承者。
cmake ..
在当前目录中生成makefile,使用../CMakeLists.txt
文件作为起点make命令,在此之后执行,使用生成的makefile作为输入构建程序。这样可以方便地将源代码和生成结果保存在不同的文件夹中。一般语法为:cmake-source-dir(当然,还有很多其他开关)。
好吧,..
是父文件夹的简写,所以它可能会根据在Box2D_v2.2.1
中找到的任何内容进行操作。
- 为不同配置设置MSVC_RUNTIME_LIBRARY的正确方法是什么
- C++避免重复声明的语法是什么
- 在C++中,将大的无符号浮点数四舍五入为整数的最佳方法是什么
- 实现无开销push_back的最佳方法是什么
- C++从另一个类访问公共静态向量的正确方法是什么
- "throw expression code" 1e7 >返回 d 是什么?投掷标准::overflow_error( "too big" ) : d;意味 着?
- C++中名称篡改的目的是什么
- 在 c++ 中拥有一组结构的正确方法是什么?
- 在OSX上使用CMake将Adobe的XMP工具包构建为共享库的最简单方法是什么?
- CMake 的导出如何知道目标版本是什么?
- 对于可重定位的多平台安装,理想的 cmake 安装目录结构是什么?
- 将枚举与 CMake 链接的正确方法是什么?
- 在 Xcode 中工作的 CMake 中启用地址清理器的正确方法是什么
- 将CMAKE项目集成到Buck中的最佳方法是什么?
- 在 cmake c++ 项目中包含库的首选方法是什么?
- cmake是什么做
- cmake -D <var>:<type>=<value> 参数"-D"是什么意思
- CMake:" SET(PODOFO_BUILD_SHARED NOT ${PODOFO_BUILD_SHARED})"是什么意思?
- CMake 在中型项目中的最佳方法是什么?
- CMake "project"指令的正确用法是什么