[webkit-gtk] Win32 program for webkit-gtk cannot start on Windows XP
Phil Longstaff
plongstaff at rogers.com
Sat Apr 17 07:29:35 PDT 2010
Here's the command I used:
mingw32-configure \
--prefix=/opt/webkit-1.1.90-mingw \
--enable-debug \
--disable-channel-messaging \
--disable-offline-web-applications \
--disable-dom-storage \
--disable-eventsource \
--disable-ruby \
--disable-video \
--disable-xpath \
--disable-svg-animation \
--disable-filters \
--disable-svg-fonts \
--disable-svg-foreign-object \
--disable-svg-as-image \
--disable-svg-use \
--with-unicode-backend=icu \
--with-target=win32
On Sun, 2010-04-11 at 21:38 -0700, SCU Rock wrote:
> Thanks Phil for your reply.
>
> I found out that after g_thread_init(NULL) is called, it works on XP.
>
> Appreciate if you can let me know the cross-compilation configurations
> that you used on opensuse 11.2.
>
> Best Regards,
> Eugene
>
> On Sat, Apr 10, 2010 at 5:19 PM, Phil Longstaff
> <plongstaff at rogers.com> wrote:
>
> On Fri, 2010-04-09 at 17:05 -0700, SCU Rock wrote:
> > Hi,
> >
> > Using cross-compiled webkit win32 library on
> > http://sourceforge.net/projects/gnucash/files/gnucash%20%
> 28unstable%
> > 29/Win32%20Build%
> 20Dependencies/webkit-1.1.90-win32.zip/download, I
> > made a simple testing program on Windows :
> >
> > --------------------------------------------------------
> > #include <gtk/gtk.h>
> > #include <webkit/webkit.h>
> >
> > static void destroy_cb(GtkWidget* widget, gpointer data) {
> > gtk_main_quit();
> > }
> >
> > int main(int argc, char** argv) {
> >
> > GtkWidget* window;
> > gtk_init(&argc, &argv);
> >
> > // Create a Window, set colormap to RGBA
> > window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
> > GdkScreen *screen = gtk_widget_get_screen(window);
> > GdkColormap *rgba = gdk_screen_get_rgba_colormap
> (screen);
> >
> > if (rgba && gdk_screen_is_composited (screen)) {
> > gtk_widget_set_default_colormap(rgba);
> > gtk_widget_set_colormap(GTK_WIDGET(window), rgba);
> > }
> >
> > gtk_window_set_default_size(GTK_WINDOW(window), 800,
> 600);
> > g_signal_connect(window, "destroy",
> G_CALLBACK(destroy_cb), NULL);
> >
> > // Optional: for dashboard style borderless windows
> > gtk_window_set_decorated(GTK_WINDOW(window), FALSE);
> > printf ("I am here\n");
> > // Create a WebView, set it transparent, add it to the
> window
> > WebKitWebView* web_view =
> WEBKIT_WEB_VIEW(webkit_web_view_new());
> > printf ("I am here 2\n");
> > // webkit_web_view_set_transparent(web_view, TRUE);
> > gtk_container_add (GTK_CONTAINER(window),
> GTK_WIDGET(web_view));
> >
> > // Load a default page
> > webkit_web_view_open(web_view, "http://www.google.com");
> >
> > // Show it and continue running until the window closes
> > gtk_widget_grab_focus(GTK_WIDGET(web_view));
> > gtk_widget_show_all(window);
> > gtk_main();
> > return 0;
> > }
> >
> > It works well on Vista. The program has a bunch of DLL
> dependencies
> > and I have put them on the same directory of the program.
> But on
> > Window XP, it hangs at
> WEBKIT_WEB_VIEW(webkit_web_view_new()). There
> > is no message, no CPU hike, just silent stuck. Does anyone
> know why
> > the program cannot run on XP?
> >
> > I know the library is not stable (being downloaded from
> "gnucash
> > unstable"). But working on XP is very basic and should work,
> right?
>
>
> That library is from the 1.1.90 src rpm from opensuse. I
> applied most
> of the 1.1.90.windows.patch file which came with the rpm, and
> also
> applied Josip's mime-types patch to allow local files to be
> loaded. I
> then cross-compiled it on opensuse 11.2. I can find the
> configuration
> options if you want.
>
> It is in the "gnucash (unstable)" folder on sourceforge
> because it is
> being used with gnucash 2.3.X which is an unstable version
> (2.4.0 will
> be the stable version resulting from testing 2.3.X).
>
> If you look at the GtkLauncher.cpp source file (it would be in
> the
> 1.1.90 tarball on webkitgtk.org), that might give you some
> clues.
> GtkLauncher is also in the zip file you downloaded from
> sourceforge, and
> was also cross-built on opensuse 11.2. It runs just fine on
> XP.
>
> At some point, I'll rename the sourceforge folder to be
> something like
> "win32 dependencies" at the main level, not under "gnucash
> (unstable)".
> Of course, even better would be for webkitgtk to build
> properly without
> needing all the patches and for there to be an automated
> mingw32 build.
>
> Phil
>
>
More information about the webkit-gtk
mailing list