QT Creator里printf函数输出到“应用程序输出”界面?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QT Creator里printf函数输出到“应用程序输出”界面?相关的知识,希望对你有一定的参考价值。

我在QT Creator环境下编译程序,使用printf函数命令输出,之前输出的内容都会显示在“应用程序输出”窗口,后来不知为何“应用程序输出”窗口不再显示内容了,只提示“
调试开始
调试正常结束
”两行字

在qt代码printf后面加fflush(stdout);既可以及时输出出来。如

printf("SM2_do_decrypt %d %d\n", ret, outLen);
fflush(stdout);
参考技术A 项目配置中 选择 终端运行 参考技术B 你把那个窗口关闭了,点编辑框上面的还原就行了

Qt Creator:将 .exe 输出复制到文件夹中

【中文标题】Qt Creator:将 .exe 输出复制到文件夹中【英文标题】:Qt Creator: copy .exe output into a folder 【发布时间】:2014-05-12 08:36:00 【问题描述】:

很抱歉,如果该问题已被提出,但经过一些研究后我找不到答案。我想将项目的 .exe 自动复制到文件夹中。

我使用的是 Qt creator 5.0.1 MSCV2010,它总是产生两个输出:发布和调试。

例如,我希望/release/project.exe/release/exec/project.exe 中。

我看到我可以在 .pro 中复制 .dll 之类的文件:

INSTALLS =

但它只适用于已经存在的文件,或者编译后生成的.exe。我想我可以将其指定为:

projects settings->Build compilation->step Make : jom.exe in C:\path\to\project-release

但我不知道需要什么参数, 问候

【问题讨论】:

请注意,qmake 和 Qt Creator 是两个不同的东西。他们经常一起使用,但无论哪种方式都不相互依赖。 【参考方案1】:

在 Windows 上,您可以使用 DLLDESTDIR 变量指定复制目标 dll 或 exe 的位置。只需将其添加到您的 .pro 中即可:

CONFIG(release, debug|release): DLLDESTDIR +=  $$PWD/../exec

在 Linux 上,您可以使用 QMAKE_POST_LINK 变量,该变量包含将 TARGET 链接在一起后要执行的命令。所以它是这样的:

CONFIG(release, debug|release): QMAKE_POST_LINK += $$quote(cp project $$PWD/../exec)

这里project是你TARGET = project提供的目标文件的名称

这些会将可执行二进制文件复制到名为exec 的目录,该目录比程序工作目录高一级。你可以有你的任意路径。

【讨论】:

非常感谢,第一个命令对我来说很好。我不知道 .pro 的这个说明,但它在未来会很有用。【参考方案2】:

使用命令和参数添加自定义构建步骤

对于 Windows(假设您正在为发布版本执行此操作):

xcopy
Release\<target.exe> path\to\destination\file.exe /Y
%buildDir

【讨论】:

【参考方案3】:

这应该可行。我找不到任何指向 target_path 的variable。所以我定义了它:

### to copy target file to build folder
CONFIG(debug, debug|release) 
    TARGET_PATH = $$OUT_PWD/debug

CONFIG(release, debug|release) 
    TARGET_PATH = $$OUT_PWD/release


win32: QMAKE_POST_LINK += copy /y "$$shell_path($$TARGET_PATH/app_name.exe)" "$$shell_path($$PWD/../build/)"
unix: QMAKE_POST_LINK += cp "$$shell_path($$TARGET_PATH/app_name)" "$$shell_path($$PWD/../build/)"

【讨论】:

以上是关于QT Creator里printf函数输出到“应用程序输出”界面?的主要内容,如果未能解决你的问题,请参考以下文章

在Qt Creator 和在 vs2012 里添加信号和槽

如何使用 Qt Creator 将 C++ 头文件添加到 Qt 项目

用于命令行的 Qt Creator 标准输入,可部署到远程 Linux 主机

静态代码检查工具 cppcheck 的使用(可分别集成到VS和QT Creator里)

Qt Creator:将 .exe 输出复制到文件夹中

Qt Creator 无法启动调试器