【发布时间】:2015-08-06 21:16:16
【问题描述】:
我在 Ubuntu 14.04 (x64) 上运行 Qt (5.2.1) 和 Julia (v0.3.11)。在我可以使用的 Qt 程序中:
QProcess process;
process.start("echo 'Hello'");
并在控制台中打印出漂亮的Hello。但是当我尝试执行一个简单的 Julia 命令时,出现了问题:
QProcess process;
process.start("julia -e 'println(STDOUT, \"Hello\")'");
if (!process.waitForFinished())
return;
cout << "Status: " << process.exitStatus() << endl;
输出只是Status: 0。
为什么标准输出中没有打印任何内容?
注意:Julia 已经正确安装在我的系统上,shell 中julia -e 'println(STDOUT, "Hello")' 的输出如预期的那样是Hello。
【问题讨论】:
-
还要检查退出代码和 stderr/stdout 输出。我还建议使用 start(QStringList) 重载以避免引用问题
-
你可以试试 process.start("julia", QStringList()
-
你可以尝试使用execute()而不是start()吗?
-
感谢您的 cmets。不幸的是,这些建议都没有奏效。