Articles of qt5

项目错误:QT中的未知模块:webkitwidgets

我试图使用MXE(在本教程的帮助下),并在qmake && make步骤中收到此错误消息: Project ERROR: Unknown module(s) in QT: webkitwidgets". 这是什么意思,我该怎么办?

本机KDE寻找Qt 5应用程序

我在Kubuntu 12.10 linux机器上安装Qt5和Qt4,注意到以下几点: 使用Qt4编译的程序具有原生的KDE外观和感觉。 我使用默认的KDE的Oxygen主题,我的程序也是这样(请注意平滑的渐变,标题和蓝色select的焦点部件); 但是当用Qt5 进行重新编译而没有对代码做任何改变的时候 ,它使用了不同的风格(看起来就像是Fusion ),看起来很尴尬和不合适(见右图) 我想要的是非常直截了当的:我希望我的应用能够适应周围的系统,也就是始终看起来是本地的。 在使用Qt4时,我习惯于默认使用这个。 Qt5在Windows中似乎也具有正常的本地外观。 但是我还需要做些什么才能在Kubuntu中拥有相同的function呢? 而且, 到处都是理想的? 我的意思是,我不想强​​制我的应用程序的Linux版本严格使用氧气 。 我希望它能够使用当前在KDE中设置的主题:就像在Qt4中一样。 看起来应用程序代码与这个问题无关:我没有使用任何QStyle,这是Qt的“hello-world”。 但是,以防万一它在GitHub上 。 UPD: @peppe 已经给出了相当充分的答案, 为什么会出现这个问题 (KDE中的Oxygen主题是针对Qt4编译的,而Qt5则无法使用)。 但我仍然在寻找如何解决这个问题的答案? 我试图find氧气主题源来玩,但除了Firefox主题没有find任何东西。 UPD2: @kwirz 提出了一个有趣的想法:强制应用程序使用GTK +主题,并在KDE设置中启用氧气gtk ,使GTK窗口看起来类似于氧气。 一方面,它确实看起来更接近于氧气: 但另一方面,我们已经看到了很小的差异:只读行编辑变成灰色,聚焦的button仍然不亮,等等。不幸的是,当试图将这种技术应用到更复杂的小部件时,出现更多的文物(特别是combobox和微调): 所以看起来这个技术不可能是一个完整的解决scheme,但仍然非常有用的是简单的情况。

Qt的sysroot和prefix选项是一个实际的例子

我正在查看可以为Qt提供的configure脚本运行的所有选项。 (特别是qt-everywhere-opensource-src-5.2.0)。 经过相当多的search,我已经确定这个东西是最好的logging,所以我希望我能得到一些帮助。 当我查看prefix和sysrootconfiguration选项的描述时: 〜/ qt-everywhere-opensource-src-5.2.0 $ ./configure -help | grep“sysroot” -extprefix <dir> …使用-sysroot时,将所有内容安装到<dir> , -sysroot <dir> ……将<dir>设置为目标编译器和qmake的sysroot,并设置pkg-configpath。 -no-gcc-sysroot …..当使用-sysroot时,它会禁止传递–sysroot到编译器 〜/ qt-everywhere-opensource-src-5.2.0 $ ./configure -help | grep“前缀” -prefix <dir> ……这将安装与<dir> -extprefix <dir> …使用-sysroot时,将所有内容安装到<dir> , -hostprefix [dir]开发时需要的工具和库 所以我之前使用了-prefix ,并且完全按照所述进行了操作。 它将所有内容放在提供的<dir> ,然后当我使用<prefix_dir>/bin/qmake构build我的应用程序并将其安装在我的目标平台上时,它希望find<prefix_dir>/lib处的所有共享对象库。 我的印象是,如果我使用-sysroot它会将所有东西安装在<sysroot_dir>然后当我在目标平台上安装我的应用程序时,它将在/libsearch。 至less我希望这是真的。 现在如果我的假设是正确的,那么-extprefix什么-extprefix呢? 他们是否说,如果我可以redirect的地方好事,如果我同时使用-sysroot和-extprefix ? 那么为什么我要使用-no-gcc-sysroot呢? 如果我想我的Qt库安装在“sysroot”为什么我不希望gcc使用/知道相同的sysroot? 如果我能得到一些关于如何正确使用这些选项的实际例子,那么对这些中的一些的解释会很好,甚至更好。

什么是各种Qt平台插件的使用?

我正在为基于ARM的目标(TI AM335x EVM)进行一些Qt5.2应用程序的交叉编译,并且无法在我的平台上显示任何东西。 在做了一些谷歌search之后,我发现如果我用以下方式启动它: ./helloworld -platform eglfs 它会显示(全屏幕,但它的工作)! 我开始考虑所有的平台选项,我发现: android,eglfs,linuxfb,minimalegl,windows,xcb,cocoa,ios,offscreen,qnx,directfp,kms,最小,openwfd 我想知道他们是为了什么。 例如,我假设如果我想在Android设备上运行我的应用程序,则必须传递-platform android ,但它们对我来说并不明显。 是否有任何地方应该使用这些参数的每一个? 例如, eglfs代表什么? 为什么我需要使用那个在linuxfb没有工作? (我会认为linux的帧缓冲是我想要启动我的应用程序,因为它是在embedded式Linux上运行)

如何静态构buildQt 5

我在Linux环境下使用基于Qt 5.0.1的Qt Creator 2.6.2。 该应用程序在我编译的计算机上工作正常,但是当我在另一台计算机上执行它时,出现如下错误: error while loading shared libraries: libQt5WebKitWidgets.so.5: cannot open shared object file: No such file or directory error while loading shared libraries: libxslt.so.1: cannot open shared object file: No such file or directory 我在这个链接find了一些解决scheme(一些链接已经死了)。 所以我添加到我的.pro文件这一行: CONFIG += static 要静态编译我的项目。 我以为我会得到的文件会更大,但我得到相同的大小和相同的错误。 谢谢。

如何在没有安装Qt的情况下运行Qt程序?

我已经用Qt5.3.1编写了一个程序,并在我的开发机器上运行,它工作正常。 我将所有必需的.dll文件复制到我的.exe所在的文件夹中。 这些是: Qt5Widgets.dll Qt5Network.dll Qt5Gui.dll Qt5Core.dll icudt51.dll icuin51.dll icuuc51.dll libgcc_s_dw2-1.dll libwinpthread-1.DLL 的libstdc ++ – 6.dll 现在我想在没有安装Qt的机器上运行该程序。 我怎么做? 用户不需要为了使用程序而安装IDE,对吧? 开发机器的细节在哪里工作: Windows 8 Qt 5.3.1 部署平台是: Windows Vista 没有安装Qt,但所有必需的.dll都已安装 我得到的错误是第一: 此应用程序无法启动,因为它无法find或加载Qt平台插件“窗口”。 重新安装应用程序可能会解决此问题。 下一个错误信息是: 此应用程序请求运行时以不寻常的方式终止。 请联系支持。 然后程序崩溃。 但是,如果我安装Qt5.3.1它的作品。 所以它与c:/Qt目录中的文件有关

在为QT编译opencv时出错

我想在QT使用opencv ,所以我必须用mingw编译它。 当我想用CMake 2.8.10.2进行编译时,它有以下错误 The CXX compiler identification is GNU 4.7.2 The C compiler identification is GNU 4.7.2 Check for working CXX compiler: C:/Qt/Qt5.0.1/Tools/MinGW/bin/g++.exe Check for working CXX compiler: C:/Qt/Qt5.0.1/Tools/MinGW/bin/g++.exe — broken CMake Error at C:/Program Files (x86)/CMake 2.8/share/cmake-2.8/Modules/CMakeTestCXXCompiler.cmake:54 (message): The C++ compiler "C:/Qt/Qt5.0.1/Tools/MinGW/bin/g++.exe" is not able to compile a simple test program. It fails […]

QWinTaskbarProgress将不会显示

我使用Windows7和Qt5.3.0我下面添加到我的MainWindow的构造函数,但没有任何显示在我的任务栏上。 我错过了什么? QWinTaskbarProgress * pTaskbarProgress = new QWinTaskbarProgress(this); pTaskbarProgress->setMinimum(0); pTaskbarProgress->setMaximum(100); pTaskbarProgress->setValue(50); pTaskbarProgress->show();

在Windows上使用FreeType和Qt5

有谁知道是否可以用FreeType作为Windows上的文本渲染器来构buildQt5而不是本地渲染器? 我试着用-qt-freetype编译Qt5,但是我仍然弄坏了文本。 我还需要做点什么吗?

编译Qt 5.3.2 + VS2008 + SDK7.1错误SHARDAPPININFOLINK

当编译Qt 5.3.2 + VS2008 + SDK7.1我得到了这些错误: qwinfunctions_p.cpp qwintaskbarbutton.cpp qwintaskbarprogress.cpp windowsguidsdefs.cpp qwinjumplist.cpp qwinjumplistcategory.cpp qwinjumplistitem.cpp qwineventfilter.cpp qwinthumbnailtoolbar.cpp C:\Program Files\Microsoft SDKs\Windows\v7.1\include\shlobj.h(2947) : error C2011: 'SHARDAPPIDINFOLINK' : nueva definición del tipo 'struct' c:\qt\5.3.2\qtwinextras\src\winextras\winshobjidl_p.h(228) : vea la declaración de 'SHARDAPPIDINFOLINK' .\qwinjumplistcategory.cpp(134) : error C2079: 'info' utiliza struct 'SHARDAPPIDINFOLINK' sin definir .\qwinjumplistcategory.cpp(135) : error C2228: el operando izquierdo de '.pszAppID' debe […]