如果我使用execute_process从CMake调用Python / Bash脚本,并且此脚本使用输入/输出,则它不起作用 - 在脚本执行时无法获取任何输入或显示输出。有什么办法吗?我需要根据用户输入以不同方式继续构建我的项目。 示例CMakeLists.txt
execute_process(
COMMAND python ${MY_BUILD_DIR}/test_input.py
)
示例test_input.py
result = raw_input("Enter something + [ENTER]: ")
print(result)
编辑: 实际上,如果在execute_process中将此脚本仅作为COMMAND调用(如我的示例中所示),则Python会正常等待输入,但不会输出任何输出(“输入内容+ [ENTER]:”)。如果我使用另一个COMMAND和类似的Python(或Bash)脚本,那么raw_input将从第一个脚本(如execute_process中所述)返回输出(“输入内容+ [ENTER]:”+结果)但后续的raw_input调用将失败“EOFError :读取一行时的EOF“好像从文件读取输入并收到EOF但我希望从标准输入读取下一行。
所以我有两个问题: