[Qt-embedded-interest] where gnash plugin can be used int qt webkit ??

wanglijun wanglijun at sunniwell.net
Sat Jul 25 11:08:58 CEST 2009


  hi :  

    as you know, qt have some demo ,  there is a browers demo in
QTDIR/demo/browers ,  but  this demo cant play swf format file , 
  if  i want to  this demo  with the support of  swf  player ,  i
should  add  some  flash plugin ,  
  i chose gnash ,    gnash can be  compile to be flash plugin , but
gnash plugin use NPAPI to  connect with browers ,  
 
  i do  as follow:  

   my plat environment is : 
   Linux version 2.6.24-24-generic (buildd at palmer)
   ubuntu 8.04 
   gcc version 4.2.4 (Ubuntu 4.2.4-1ubuntu4)
  qt 4.5.2  ,      install qt4  at /usr/local/Trolltech/Qt-4.5.2
i   do it    as follow:
  sudo ./configure  --enable-gui=qt4  --enable-npapi
--with-qt4-lib=/usr/local/Trolltech/Qt-4.5.2/lib
--with-qt4-incl=/usr/local/Trolltech/Qt-4.5.2/include
  sudo  make 
  
   but it can't compile successfully   
its error information is :

plugin.h:86: error: ‘GIOChannel’ has not been declared
plugin.h:86: error: ‘GIOCondition’ has not been declared
plugin.h:88: error: ‘GIOChannel’ has not been declared
plugin.h:88: error: ‘GIOCondition’ has not been declared
plugin.h:102: error: ‘gchar’ has not been declared
plugin.h:102: error: ‘gsize’ has not been declared
plugin.h:121: error: ISO C++ forbids declaration of ‘GIOChannel’ with no
type
plugin.h:121: error: expected ‘;’ before ‘*’ token
plugin.cpp: In constructor
‘nsPluginInstance::nsPluginInstance(nsPluginCreateData*)’:
plugin.cpp:421: error: class ‘nsPluginInstance’ does not have any field
named ‘_ichan’
plugin.cpp: In destructor ‘virtual
nsPluginInstance::~nsPluginInstance()’:
plugin.cpp:457: error: ‘_ichan’ was not declared in this scope
plugin.cpp:462: error: ‘GError’ was not declared in this scope
plugin.cpp:462: error: ‘error’ was not declared in this scope
plugin.cpp:463: error: ‘g_io_channel_shutdown’ was not declared in this
scope
plugin.cpp:464: error: ‘g_io_channel_unref’ was not declared in this
scope
plugin.cpp:470: error: ‘g_source_remove’ was not declared in this scope
plugin.cpp: At global scope:
plugin.cpp:720: error: ‘bool
nsPluginInstance::handlePlayerRequestsWrapper’ is not a static member of
‘class nsPluginInstance’
plugin.cpp:720: error: ‘GIOChannel’ was not declared in this scope
plugin.cpp:720: error: ‘iochan’ was not declared in this scope
plugin.cpp:721: error: ‘GIOCondition’ was not declared in this scope
plugin.cpp:721: error: expected primary-expression before ‘*’ token
plugin.cpp:721: error: ‘plugin’ was not declared in this scope
plugin.cpp:721: error: initializer expression list treated as compound
expression
plugin.cpp:722: error: expected ‘,’ or ‘;’ before ‘{’ token
plugin.cpp:727: error: ‘bool nsPluginInstance::handlePlayerRequests’ is
not a static member of ‘class nsPluginInstance’
plugin.cpp:727: error: ‘GIOChannel’ was not declared in this scope
plugin.cpp:727: error: ‘iochan’ was not declared in this scope
plugin.cpp:727: error: ‘GIOCondition’ was not declared in this scope
plugin.cpp:727: error: initializer expression list treated as compound
expression
plugin.cpp:728: error: expected ‘,’ or ‘;’ before ‘{’ token
plugin.cpp:107: warning: ‘const char* getPluginDescription()’ declared
‘static’ but never defined 

my question is : 

1 .does  gnash support npapi  when i use  "--enable-gui=qt4" ?    i know
gnash use npapi ,when --enable-gui=gtk
2. you know  qt contain some demo , there is a browers demo in
$QTDIR/demo/browers,  i set a  environment variable
QTWEBKIT_PLUGIN_PATH ,
it tell the browers  where the flash plugin is . 
so , i try  configue  gnash again   
sudo ./configure  --enable-gui=qt4
--with-qt4-lib=/usr/local/Trolltech/Qt-4.5.2/lib
--with-qt4-incl=/usr/local/Trolltech/Qt-4.5.2/include
sudo  make 
compile successfully.
but when run demo browers , the flash can't be  show nornally.  
error information  as follow : 
QString::arg: Argument missing: Unable to resolve the res_nclose   The
symbols  “res_nclose”:resolv, (/usr/lib/libresolv.so: undefined symbol:
res_nclose)
RcInitFile: parsing /usr/local/etc/gnashrc
QString::arg: Argument missing: Unable to resolve the  NP_Initialize The
symbols “NP_Initialize”:/usr/lib/gnash/libgnashserver-0.8.2.so,
(/usr/lib/gnash/libgnashserver-0.8.2.so: undefined symbol:
NP_Initialize)
QString::arg: Argument missing: Unable to resolve the  NP_Shutdown  The
symbols   “NP_Shutdown”:/usr/lib/gnash/libgnashserver-0.8.2.so,
(/usr/lib/gnash/libgnashserver-0.8.2.so: undefined symbol: NP_Shutdown)
QString::arg: Argument missing: Unable to resolve the NP_Initialize中
The symbols  “NP_Initialize”:/usr/lib/gnash/libgnashamf-0.8.2.so,
(/usr/lib/gnash/libgnashamf-0.8.2.so: undefined symbol: NP_Initialize)
QString::arg: Argument missing: Unable to resolve the  NP_Shutdown  the
symbols“NP_Shutdown”:/usr/lib/gnash/libgnashamf-0.8.2.so,
(/usr/lib/gnash/libgnashamf-0.8.2.so: undefined symbol: NP_Shutdown)
QString::arg: Argument missing: Unable to resolve the  NP_Initialize
The symbols  “NP_Initialize”:/usr/lib/gnash/libgnashbase-0.8.2.so,
(/usr/lib/gnash/libgnashbase-0.8.2.so: undefined symbol: NP_Initialize)
QString::arg: Argument missing: Unable to resolve the  NP_Shutdown  The
symbols  “NP_Shutdown”:/usr/lib/gnash/libgnashbase-0.8.2.so,
(/usr/lib/gnash/libgnashbase-0.8.2.so: undefined symbol: NP_Shutdown)

i think  the problem is  that  i  configure the gnash without npapi
support,  but  if i  --enable-npapi  , it can't  compile
successfully , 
anyone can  give me  some advice   for my   problem ??
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.qt.nokia.com/pipermail/qt-embedded-interest/attachments/20090725/da22be62/attachment.html 


More information about the Qt-embedded-interest mailing list