草庐IT

c++ - 让 gprof 从 Qt 调试应用程序读取 gmon.out 输出的问题

我正在尝试分析我正在开发的Qt窗口应用程序,并且已经阅读了使用gprof进行分析的方法。我已经成功地将项目配置为编译并与-pg标志链接以启用分析,并且每次执行应用程序时都会输出gmon.out。但是,当我尝试运行gprof将gmon.out文件转换为可读的txt文件时,我遇到了“gmon.out太短而不能成为gmon文件”的错误消息。我试着用谷歌搜索这个问题的答案,但无济于事。这里也有人问过同样的问题,但没有给出答案。我在Windows7上为此项目使用Qt4.7.4和QtCreator2.3.0以及mingw编译器。我在.pro文件中设置的标志是:#ProfilerflagsCONFI

c++ - 返回对类静态数据成员的引用的正确方法是什么? (我正在使用 Qt,以防它有所作为)

我正在尝试从DLL中获取类静态数据成员的地址,并将其保存在主机代码中。但是,当我退出dll-manager中的方法时,我丢失了对成员的指针/引用,该方法打开了所有(Windowstypedef)HINSTANCEs,即使我让它们保持打开状态.我的设置是:一个QtGUI应用程序,其中包含一个从dll加载插件的类。这个dll-manager类不使用Qt的东西,而是到处使用Qdir和Qstrings...dll-manager应该发出一堆LoadLibrary()调用来打开DLL,并为每个调用一个导出函数,该函数返回DLL导出类中静态“信息”结构的地址。例如,DLL类如下所示:BlackNW

windows - 适用于 Windows 的 Profiler QT 应用程序

您好,我正在寻找一个分析器应用程序来分析Windows的QT应用程序。目前,我尝试使用英特尔的ParallelStudio,但我得到了很多误报。有任何链接或文档可以启动吗? 最佳答案 http://doc.qt.io/qtcreator/creator-cache-profiler.htmlQtCreator本身内置了一个分析器,只需查看上面的链接即可了解它们。 关于windows-适用于Windows的ProfilerQT应用程序,我们在StackOverflow上找到一个类似的问题:

windows - 是否可以使用 Visual Studio 11 模拟器的多个实例来调试多人 Metro 应用程序?

我知道为WindowsPhone应用程序执行此操作的解决方案。但在我看来,这必须以其他方式完成。如果有人在这里有任何见解,我会很高兴.. 最佳答案 不可能。您可以想象使用hyper-v解决方案并在您的机器上运行多个操作系统,然后使用远程调试工具连接到它们? 关于windows-是否可以使用VisualStudio11模拟器的多个实例来调试多人Metro应用程序?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow

使用 Qt 库的 C++ 应用程序在屏幕保护程序启动时停止工作

我有一个使用一些Qt库的C++应用程序。在屏幕保护程序弹出并启动之前,应用程序工作正常。之后,如果我退出屏幕保护程序,应用程序就会崩溃,我必须重新启动它。我已经在Windows7和XP上测试了该应用程序,这两种情况都会发生。我可以在代码中更改什么以防止这种情况发生吗? 最佳答案 LucaCarlon为您提供了很好且相当受欢迎的建议——使用调试器。在你的情况下,你可以从officialdocumentation获得很多关于调试的信息。.当你运行你的程序调试时,你必须重放你的程序崩溃时的情况:你必须手动启动屏幕保护程序,或者加快屏幕保护

windows - $$PWD 不再适用于 Qt Creator 2.6

我有一个项目(https://github.com/waddlesplash/qtfastjson),它有一个使用qmake的$$PWD变量的.pri文件。这在所有经过测试的qmake版本中都可以正常工作,但在QtCreator2.6中,文件不会显示在项目树中(但可以正确编译)。这是PRI:QT+=coreINCLUDEPATH+=$$PWDHEADERS+=$$PWD/QtFastJson.h\$$PWD/QtFastJsonObject.hSOURCES+=$$PWD/QtFastJson.cpp\$$PWD/QtFastJsonObject.cpp它包含在.pro中:includ

windows - 安装boost.log(使用代码块12.11 + gcc 4.7.1的Windows 7)

我试图在代码块12.11上构建并运行boost.log库。我没有boost和boost.log的经验,想学习它,所以,首先我需要安装它。安装Boost首先,我遵循howtoinstallboostusingcodeblocks上的步骤结果在两台不同的计算机上(都有Windows7),我在%mypath%\boost\lib中得到了不同的文件列表(一台电脑只有6个文件,另一台52个)更大的列表是:libboost_chrono-mgw47-mt-1_52.a公司libboost_chrono-mgw47-mt-d-1_52.a公司libboost_date_时间-mgw47-mt-1_5

windows - 为QT编译opencv时出错

我想在QT中使用opencv,所以我必须用mingw编译它。当我想用CMake2.8.10.2编译它时出现以下错误TheCXXcompileridentificationisGNU4.7.2TheCcompileridentificationisGNU4.7.2CheckforworkingCXXcompiler:C:/Qt/Qt5.0.1/Tools/MinGW/bin/g++.exeCheckforworkingCXXcompiler:C:/Qt/Qt5.0.1/Tools/MinGW/bin/g++.exe--brokenCMakeErroratC:/ProgramFiles(x

c++ - Qt 5.0.2 应用程序的可移植性问题。如何制作简约的Qt包?

我知道Qt默认情况下不是静态构建的,如果有任何扩展名为.lib或.a的文件,那么这些文件只是导入库。我希望我的应用程序小巧便携,所以除了考虑静态重新编译Qt之外,我还考虑如何使动态库包尽可能小,以便可以安装在另一台与Qt无关的计算机上,使其完全在运行我的Qt应用程序时有效。在这种情况下,我是关于WindowsXp或更高版本的Windows。在创建这样一个包的情况下,我首先意识到Qt5安装程序不会向系统和用户路径添加任何内容,并且在没有QtCreator的情况下我无法运行我编译的应用程序。但是,在我将此添加到系统和用户Path变量后:"K:\Qt\Qt5.0.2\5.0.2\mingw4

c++ - qt linux "QMAKE_CXXFLAGS += -std=c++11"相当于 windows?

我是新手,如果这真的很愚蠢,请原谅我。最近我在ubuntu中使用qt创建了一个项目,我使用“QMAKE_CXXFLAGS+=-std=c++11”进行静态链接,一切顺利所以我想为什么不在Windows上重新编译它,我做到了。这是node.h#ifndefNODE_H#defineNODE_H#include#include#include"qcustomplot.h"usingnamespacestd;classnode{public:doublep[6];stringtable[3000][9];doublesplitPoints[8];doubleginiA[8];//arrayo