有没有办法在CMake脚本中设置一个变量到shell命令的输出?
像SET(FOO COMMAND“echo bar”)这样的东西会被记住
像SET(FOO COMMAND“echo bar”)这样的东西会被记住
你想要
原文链接:https://www.f2er.com/bash/391005.htmlexecute_process
命令。
@H_404_6@在你的情况下,在Windows:
execute_process(COMMAND CMD /c echo bar OUTPUT_VARIABLE FOO)@H_404_6@或在Linux上,只需:
execute_process(COMMAND echo bar OUTPUT_VARIABLE FOO)@H_404_6@在这种特殊情况下,CMake提供了一个跨平台解决方案。 CMake本身可以用于运行可以在所有系统上使用的命令,其中之一是echo。为此,CMake应该传递命令行arg
-E
.有关这样的命令的完整列表,请运行cmake -E help
@H_404_6@在CMake脚本中,CMake可执行文件由${CMAKE_COMMAND}
引用,因此脚本需要执行:
execute_process(COMMAND ${CMAKE_COMMAND} -E echo bar OUTPUT_VARIABLE FOO)