2012-06-05 38 views
2

我需要一个QWebView来显示图像,而不是它当前显示的问号。如何静态链接WebKit的Qt图像格式插件?

我发现我需要将一些图像插件链接到我的应用程序来这样做。我已经研究了这个问题一段时间了,我还没有找到一个令人满意的解决方案。

我按照这些步骤:

1)我已经在我的项目文件夹添加并在其中应用程序被编译命名文件夹中的文件夹:imageformats/中,我已经把这些如下因素的插件:libqgif.solibqjpeg.so

2)我已经加入到我的项目配置文件(.pro),来此:

QTPLUGIN  += qjpeg \ 
       qgif 

3)我已经加入的.cpp方含我的项目的主要功能是:

#include <QtPlugin> 

Q_IMPORT_PLUGIN(qjpeg) 
Q_IMPORT_PLUGIN(qgif) 

,我得到了以下错误:

main.cpp:(.text.startup+0xce): undefined reference to `qt_plugin_instance_qjpeg()' 
main.cpp:(.text.startup+0xda): undefined reference to `qt_plugin_instance_qgif()' 

我也试图改变目录到plugins/imageformats/,但它没有任何区别。

+0

你是如何获得/建立Qt的?至少在Qt Creator中,这应该“起作用”。我有一个应用程序显示JPEG图像,并不需要任何额外的代码...没有QTPLUGIN,Q_IMPORT_PLUGIN等。当我*部署*,然后我包括插件,就像你有。 –

+0

我从http://qt.nokia.com/downloads下载了qt创建器。我在Ubuntu 12.04 32位上运行 –

回答

1

对我来说(在Ubuntu 12.04上),我没有安装libjpeg和dev头文件。

$ sudo apt-get install libjpeg62-dev 

(如果你没有,它也会安装libjpeg62)。

之后,我的QTWebView显示JPEG图像没有任何额外的修改。