正确的方式来获得在多部分cmake的项目一个不折不扣的源码编译
-
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将自动创建生成文件夹,如果它不存在。
不隶属于 StackOverflow