【发布时间】:2019-04-16 05:12:05
【问题描述】:
我正在尝试创建一个 CMake 构建,它将在构建软件之前运行多个 python 脚本,如果有的话。作为一个起点,我想创建一个只运行一个 python 脚本的 CMake 项目。我无法让脚本执行。这是我的项目中的内容。
test.py
open('script_output.txt', 'a').close()
CMakeLists.txt
cmake_minimum_required (VERSION 2.6)
project (module)
add_custom_command(OUTPUT script_output.c
COMMAND python test.py)
add_custom_target(release ALL DEPENDS script_output.c)
它似乎尝试运行 Visual Studio 编译器,我不想要它并且不运行我想要的 python 脚本script_output.py。我在这里做错了什么?
【问题讨论】:
-
您的代码突然在最后一行终止,没有右括号 (
))。你能完成那行吗? -
对此感到抱歉。我更新了它。
-
“它似乎在尝试运行 Visual Studio 编译器” - 你的意思是,当 CMake 配置 项目时,它会检查编译器但不运行你的脚本?这是正确的,因为
project()默认启用语言 C 和 C++,并且自定义目标和命令在 build 阶段执行,而不是在 configure 阶段。 -
那么我如何让 CMake 只运行本示例中的脚本。我试图了解如何禁用 CMake 的默认行为以在此处运行 C 构建。