CMake的execute_process没有设置任何变量

时间:2018-07-16 08:37:58

标签: cmake

我对cmake的execute_process命令有一些疑问。我使用了不同的组合(对于正确的命令,使用echo为正,对于不存在的命令使用否定),但是OUTPUT_VARIABLEERROR_VARIABLERESULT_VARIABLE始终为空:

set(__BUILD_VERSION "sss")
set(__ERROR_VARIABLE "aaa")
set(__EXECUTE_RESULT 0)

execute_process(
    COMMAND wrong_command
    WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/"
    OUTPUT_VARIABLE __BUILD_VERSION
    ERROR_VARIABLE  __ERROR_VARIABLE
    RESULT_VARIABLE __EXECUTE_RESULT
    OUTPUT_STRIP_TRAILING_WHITESPACE)

message( STATUS "ERROR: ${__ERROR_VARIABLE}" )
message( STATUS "OUTPUT_VARIABLE: ${__BUILD_VERSION}" )
message( STATUS "RESULT_VARIABLE: ${__EXECUTE_RESULT}" )

但是他的输出始终是

ERROR: 
OUTPUT_VARIABLE: 
RESULT_VARIABLE: 

我做错了什么?

更新:我已经删除了CMakeCache.txt,它开始工作,但是在更改文件后再次清空输出。删除CMakeCache.txt没有帮助

0 个答案:

没有答案