Ubuntu中直接编译Qt4.5或者4.6版本,发现QWebKit中无法正常调用libflash插件,会显示出:
(process:18651): Gtk-CRITICAL **: gtk_clipboard_get_for_display: assertion `display != NULL' failed Adobe Flash Player: gtk_clipboard_get(GDK_SELECTION_PRIMARY); failed.
Trying to call gtk_init(0,0);
这样的错误。
原因是libflash使用了glib的通讯机制,而默认Qt中没有对glib进行初始化,而只要在配置Qt时使用 configure -glib 就可以强制Qt使用glib作为消息循环的引擎,自然就支持glib的程序了。
启用了该参数后,需要安装glib的开发库,指令为:apt-get install libglib2.0-dev