Hi All: I've had no luck compiling for gnash-0.8.10, despite fixing many library dependency issues.
Following is my configuration (In summery): --host=mipsel-linux-gcc --disable-rpath --disable-nls --enable-gui=qt4 --disable-sound --disable-media
--disable-extensions --disable-cygnal --disable-ssh --disable-ssl --enable-renderer=cairo --enable-device=directfb --enable-fps-debug --disable-glext --disable-kparts3 --disable-kparts4 --disable-plugins --without-gconf
--disable-ghelp --disable-docbook --with-gnu-ld
Of course,I also specified lots of "--with-xx-incl=" and "--with-xx-lib=" , to tell it where all my libraries are. Now it comes to a point that majority gnash components are fine, except for "gui/qt", I don't want any X stuff in it, so I turned off all "X" parts when compiling for QT.
The "gui/qt/Qt4Gui.h" gave me trouble, because it needs to include "QX11EmbedWidget". which lead to failure of "error XEvent hasn't be declared"
I removed "EmbedWidget" class declaration in gui/qt/Qt4Gui.h" and also removed implementation/references in "gui/qt/Qt4Gui.cpp", assuming I don't need it for now, and hoping to get the compilation going. But it still failed:
CXX qt4_gnash-Qt4Gui.o In file included from qt/Qt4Gui.cpp:67: ./Qt4Gui.moc:15:34: error: private/qucomextra_p.h: No such file or directory ./Qt4Gui.moc:17:2: error: #error "This file was generated using the moc from 3.3.6. It"
./Qt4Gui.moc:18:2: error: #error "cannot be used with the include files from this version of Qt." ./Qt4Gui.moc:19:2: error: #error "(The moc has changed too much.)" In file included from qt/Qt4Gui.cpp:67:
I couldn't do anything with the "moc" file since I don't know how it's generated.
My questions are: 1. Can I completely disable GUI ? the configure script doesn't allow me to do so. I set "--disable-gui", it doesn't take it. So I had to pick on, in this case, i picked Qt.
2. Any way that we can get rid of X11 stuff if I don't want X window? it always seems to include "X11/xlib.h" 3. Most importantly, How do I fix this "Qt4Gui.moc" failure? I did "make clean" after I did code change(of removing EmbedWidget), but didn't re-configure.
FYI, for this version, the "libdevice/directfb" fail to compile, because "DirectFBDevice.h" file didn't implement "getStride()" which is a pure virtual function in base class "GnashDevice". I got around this by adding:
size_t getStride() { return getDepth() * getWidth(); }; in the DirectFBDevice.h. Not sure it's been fixed in newer version