Python subprocess.Popen - 添加GCC标志导致“没有输入文件”错误
我正在写一个Python脚本来自动化我的构建过程,这个脚本通过subprocess.Popen来调用GCC编译器。我的第一次尝试运行得很好。
>>> import subprocess
>>> p = Popen(['gcc', 'hello.c'], stdout=subprocess.PIPE, stderr=stderr=subprocess.STDOUT)
>>> p.wait()
0
>>> p.communicate()
('', None)
但是,当我给GCC传递更多的选项时,就出现了“没有输入文件”的错误,下面是示例:
>>> import subprocess
>>> p = Popen(['gcc', '-o hello hello.c'], stdout=subprocess.PIPE, stderr=stderr=subprocess.STDOUT)
>>> p.wait()
1
>>> p.communicate()
('gcc: no input files\r\n', None)
有没有人知道这可能是什么原因呢?
1 个回答
6
那不应该是这样吗
p = Popen(['gcc', '-o', 'hello', 'hello.c'], stdout=subprocess.PIPE, stderr=stderr=subprocess.STDOUT)