Message-ID: <43660BF5.80008 at rftp.com> Date: Mon, 31 Oct 2005 04:20:05 -0800 From: Robert Roessler Organization: Robert's High-performance Software MIME-Version: 1.0 To: Jacques Garrigue CC: lablgtk at math.nagoya-u.ac.jp Subject: Re: DLL import lib and new LablGTK distribution? References: <4365B422.8060705 at rftp.com> <20051031.161133.123928805.garrigue at math.nagoya-u.ac.jp> In-Reply-To: <20051031.161133.123928805.garrigue at math.nagoya-u.ac.jp> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Jacques Garrigue wrote: > From: Robert Roessler > >> So, with the 2.6 distribution, where am I supposed to come up with the >> dlllablgtk2.lib file? Since it is used with the DLL, which is used by >> bytecode OCaml programs, shouldn't it be included in a "binary" >> distribution? >> >> Back in June/July, you had agreed that this should be part of a >> standard "make install" - and the Makefile reflects this... so was >> this just an oversight? >> >> Yes, of course I can go back to doing full builds of LablGTK, but I >> assume that the intent of making the "binary" distribution is to avoid >> that (unless required for native linking)? :) > > I thought a bit about it, but I finally concluded that this was not > the goal of the binary distribution. It is intended for ocaml > programmers, not for C hackers :-) > More precisely, you only need dlllablgtk2.lib if you want to create > another C stub library depending on dlllablgtk2.dll. In such a case > you will also need header files, etc... > On the other hand you don't need it if you just want to link a > program, even if this program uses other libraries distributed > as binary. See for instance the lablrsvg package for that. Like I said, I can certainly go back to to doing the full LablGTK builds the old way... it just seems sort of pointless to not pass along something that is both needed (for widgets wanting to use Val_GtkObject_sink) and is a free byproduct of a build you are doing anyway. Put a different way, nothing *forced* you to include the .lib dependencies with your packaging of the GTK runtime - but you do because it saves some steps for users of the software you have spent so much time on (and might ultimately help get even more users). And the only "C hacking" being done here is to provide OCaml wrappers for GTK widgets so that others will not have to - and can just enjoy the luxury of OCaml-only programming. :) This is even more unfortunate, given the apparent coolness of the new "build.ml" approach - I got a "Now ready to use on an OCaml MSVC port" the first time I tried it... > By the way, it appears do be very easy to recreate an export library > from a dll, using pexport. See the details here > http://mingw.org/mingwfaq.shtml#faq-msvcdll > So even if you don't have it, you still have it. Thanks for the pointer - but this looks "hackish" enough that I would rather do the full build anyway, given that I have the "option". Robert Roessler robertr@rftp.com http://www.rftp.com