正确的方式来获得在多部分cmake的项目一个不折不扣的源码编译

StackOverflow https://stackoverflow.com/questions/1230644

  •  22-07-2019
  •  | 
  •  

我用CMake的构建,测试和安装我的项目。 我的方法是有点粗:我用一个脚本,这样得到的乱源编译:

DIR=debug_build &&
rm -fr ./${DIR} &&
mkdir -p ${DIR} &&
cd ${DIR} &&
cmake -D CMAKE_BUILD_TYPE=Debug $@ .. &&
make 

我想我至少可以把它放到makefile文件,但是,这不是很奇怪使用Makefile以运行cmake生成新的Makefile和运行其它品牌?

什么是做的正确方法? 是否cmake的有一个选项,以避免调用“CD”?

最近它作为我factoread指出,我想编译,测试和单独分发库变得更加复杂。我想避免的所有的东西我有我顶的CMakeLists.txt重复。

如何通过CMake做正确?

有帮助吗?

解决方案

没有,CMake的不具有任何这样的选项。我通常喜欢一个包装生成文件来控制的CMake-调用。

这里的主要问题是,在Makefile发电机不支持运行时使,作为Visual Studio生成不指定配置。我认为有申请此功能请求,但将是非常侵入性手术来修复。

其他提示

这似乎是处理这种最常见的形式。我通常看到(和使用)批处理脚本(在UNIX或者shell脚本,或在Windows只是批处理文件)来处理这个问题,因此在运行./build将有创建build文件夹,CD,运行cmake,建造,然后去回到原来的文件夹中。

人们还可以使用CMake的GUI,该GUI将自动创建生成文件夹,如果它不存在。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top