Building lablGtk 2.18.0/2.14.2 + gtksourceview2 on Windows

Enrico Tassi <[email protected]> Wed, 4 Dec 2013 16:29:25 +0100
Newsgroups gmane.comp.lang.ocaml.lib.gtk
Message-ID <[email protected]>
Hello, I'm trying to prepare an SDK for compiling Coq on windows.
Unfortunately I can't use the prebuilt binaries, since they don't
contain the gtksourceview2 module, and CoqIDE uses it.

I could not find any warning "gtksourceview broken on windows"
hence I tried to build the thing by myself.  While the build
succeeds, the OS refuses to load the dll I obtain.  More precisely
when I run the lablgtk2 -all script I get

  Cannot load required shared library dlllablgtksourceview2
  Reason: ./dlllablgtksourceview2.dll: Access is denied.

I digged a bit into the sources (of flexdll) and the error message seems
to come from the OS.  Of course I can access this file.  I hence think
that the error message is bogus.  If I trim down ml_gtksourceview2.c to
the empty file the dll I obtain can be loaded.  So I tried to find out
which part of the file generates the problem, but I did not reach a
conclusion.  As long as the .c file contains the line 

  ML_1(gtk_source_completion_provider_get_activation, Gtk....
     Val_Activation_flags)

then something goes wrong.  Unfortunately I get the very same error with
LablGtk 2.14.2, that does not contain such line :-/ in ml_gtksourceview2.c

I'm building on windows 7, with the toolchain i686-w64-mingw32 provided
by cygwin and the prebuilt OCaml 4.00.1 (courtesy of ~protzenk).  If I
don't load the gtksourceview2 module, the lablgtk2 script loads.  Simple
gtk programs (like the ones in examples/) do run.  Coqtop (text mode) runs.
Hence I think the toolchain is OK, lablgtk2 is OK too but
lablgtksourceview2 is terribly broken (in native mode I don't even get
the error message, I just get a crash).

Help!
-- 
Enrico Tassi