[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