Re: gtkmozembed (win32)

From: Date: Tue, 23 May 2006 14:49:22 +0000
Subject: Re: gtkmozembed (win32)
References: 1  Groups: php.gtk.dev 
Request: Send a blank email to php-gtk-dev+get-2889@lists.php.net to get a copy of this message
Hi xxoes, Cool, these links are useful, thanks! I'll look into the '2' bug when I get time - that should just add on automatically as part of the build system these days, it obviously isn't doing so. Any idea about licensing, or is that on my 'Saturday list' too? :) GtkSourceView is a bigger issue because there is no win32 port of the original source (and I don't have time to play with it + the three libraries it depends on). I hadn't looked into mozembed, but it's good to know it's do-able at least. - Steph
The instructions how to build Mozilla can be found here: http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites Further, look at http://severna.homeip.net/gtkmozwin32.php - you will find a file http://severna.homeip.net/src-back.tar.gz which contents need to replace the mozilla source files in "mozilla-src\embedding\browser\gtk\src". Now the Makefile needs to be changed, as it's likely to contain wrong paths: topsrcdir = /cygdrive/c/mozilla/mozilla srcdir = /cygdrive/c/mozilla/mozilla/embedding/browser/gtk/src VPATH = /cygdrive/c/mozilla/mozilla/embedding/browser/gtk/src (here the sources were on c:\mozilla\mozilla) Now everything should be ready to compile the .dll and .lib after the howto. After this you can compile php-gtk2 with gtkmozembed. Here my config.w32: ARG_WITH("mozembed", "mozembed support", "no"); if (PHP_GTK_MOZEMBED != "no" || PHP_GTK_ALL != "no") {
       if (CHECK_LIB("gtkembedmoz.lib", "mozembed")) {
               if (FSO.FileExists("win32\\temp.bat")) {
                       var temp = FSO.OpenTextFile("win32\\temp.bat", 8);
                       temp.WriteLine("php -q generator\\generator.php -l win32\\logs\\config_mozembed.log -o ext\\mozembed\\mozembed.overrides -p mozembed -r ext\\gtk+\\gtk.defs ext\\mozembed\\mozembed.defs > ext\\mozembed\\gen_mozembed.c");
                       temp.WriteLine('grep -h "^PHP_GTK_EXPORT_CE" ext\\mozembed\\gen_mozembed.c | sed -e "s/^/PHP_GTK_API extern /" > ext\\mozembed\\gen_mozembed.h');
                       temp.Close();
               }
               ADD_FLAG("CFLAGS_MOZEMBED", "/I ext\\mozembed /I ..\\ext\\mozembed /D HAVE_MOZEMBED=1");
               EXTENSION("mozembed", "gen_mozembed.c php_mozembed.c", true); // always shared
               AC_DEFINE("HAVE_MOZEMBED", 1, "mozembed enabled");
       } else {
               WARNING("mozembed not enabled; libraries and headers not found");
       }
} There is a bug in my config because the phpg_gtkmozembed_register_classes and phpg_gtkmozembed_register_constants seems to be wrong. I changed this manualy to phpg_mozembed_register_classes and phpg_mozembed_register_constants. The define COMPILE_DL_MOZEMBED musst be COMPILE_DL_MOZEMBED2 in php_mozembed.c. Why??? Now you need to copy the *complete* compiled mozilla to C:\PHP-Gtk2 (if somebody finds out what files can be omitted, please tell us!) Sorry for my english ;) mfg xxoes -- PHP-GTK Development Mailing List (http://gtk.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php __________ NOD32 1.1380 (20060125) Information __________ This message was checked by NOD32 antivirus system. http://www.eset.com


« previous php.gtk.dev (#2889) next »