0
我正在开发一个C++项目,并且我想在构建上执行一个脚本来生成一些文件。我对CMake不是很熟悉,所以我需要一些帮助。CMake:构建项目时执行C++文件
而脚本是指项目中的.cpp文件。
我已成功地获得如下:
set(PrecisionCommand
${CMAKE_SOURCE_DIR}/src/main/matlab/matlabprecision.cpp
)
set(precision_output_files
${CMAKE_SOURCE_DIR}/work/variables.txt
)
add_custom_command(
OUTPUT ${precision_output_files}
COMMAND ${PrecisionCommand}
COMMENT "Running ${PrecisionCommand}"
)
add_custom_target(allocate_generate DEPENDS ${precision_output_files})
什么现在发生的是matlabprecision.cpp文件在文本编辑器被打开,而不是执行。我该如何解决?
你不能'执行'一个C++文件(不要称之为'脚本')。你必须编译它并执行生成的二进制文件。这闻起来像[XY问题](http://mywiki.wooledge.org/XyProblem),你真的想达到什么目的? – Biffen
你会如何期待它被执行?需要首先编译.cpp文件,以便生成可执行文件。 – pSoLT
我在想,它可能能够以某种方式在本地编译。这可能是一个XY问题。我在源代码中有一个巨大的结构,我想在每个构建中导出并保存为.txt文件(这是我想要在.cpp文件中执行的)。它可以让我有软件开发脚本的元数据。 –