1 回答

TA贡献1853条经验 获得超9个赞
Whileadd_custom_command将在您的代码编译期间运行(在 CMake 完成后),execute_process将在 CMake 配置阶段运行。
CMakeLists.txt
cmake_minimum_required(VERSION 3.0)
# Skip compiler check by enabling no languages.
project(TestProj NONE)
# Tell CMake to run python from the directory where this CMakeLists file exists.
execute_process(COMMAND python test.py
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR})
# If you have more than one script to run, use a
# separate execute_process command, to ensure sequential execution.
execute_process(COMMAND python test2.py
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR})
此外,您可以指定RESULT_VARIABLE或OUTPUT_VARIABLE使用execute_process命令根据执行过程的返回码或标准输出设置 CMake 变量;这可能有助于影响后续的 CMake 行为。
另外,如果你真的想禁用 CMake 的初始编译器检查,你可以通过NONE在project命令中指定来禁用语言。
添加回答
举报