Re: Fwd: Plans for GTK+ Bundles for win32 and win64?
- From: Kean Johnston <kean johnston gmail com>
- To: Martyn Russell <martyn lanedo com>
- Cc: gtk-devel-list gnome org
- Subject: Re: Fwd: Plans for GTK+ Bundles for win32 and win64?
- Date: Thu, 08 Sep 2011 10:45:56 +0200
If there is consent amongst the team and this is available, I can set up
the gtk.org pages for this.
There isn't consent. Some people are against the notion of having GTK+ be a
"shared component" due to two main concerns (both addressable):
1. The myriad issues surrounding the choice of CRT to use: the system
provided msvcrt.dll or the compiler-provided msvcrtXXX.dll. It is not
possible to target msvcrt.dll using Visual Studio 2010 for example, you
have to go all the way back to Visual Studio 2006, unless you use the DDK,
which is a much more modern compiler.
2. The concern that if package A installs the shared component and package
B comes along and also installs it, but it happens to be an earlier
revisions, you may encounter problems.
Problem 1 is most easily solved by creating a custom compilation suite for
building GTK itself using a mixture of Visual Studio 2010 and the DDK. As
part of the work I am currently doing I am making a full set of step by
step instructions on exactly how to do that.
Problem 2 is most easily solved by sensible naming of the DLL's, or as an
alternative, linking statically. There is no mandate in the Windows world
that we preserve libtool's insane version numbering for libraries. We can
(and should) have more sensibly named libraries such as glib228.dll rather
than glib2.dll, which covers WAY too broad a scope (just to pick on glib).
So that others do not duplicate the same work I am doing, here is what I am
working towards:
1. A single source tree with all of the required components, from zlib on
up, that can be built for either Win32 or Win64, either as a DLL or as a
static library.
2. An easy-to-install runtime package that will contain all of the runtime
components needed to run a complex GTK application.
3. An easy-to-install development environment for the above.
My ultimate goal is to try to make a "standard" distribution of all of
these packages that many applications can link against. I am constructing
things in such a way that an individual application can elect to either use
a shared version of the packages, or, at their option, their own private
copy if that makes more sense to their distribution model. All that is
required is 1 line of code to set an environment variable at the very top
of their application early in WinMain.
It would be my preference that this "distribution" be hosted on gtk.org but
I have been crafting things under the assumption that this may be difficult
or too slow, and I am making a "productized" version of the full suite that
interested parties can either just download and use, or compile themselves.
For the sake of completeness here is the set of code that I build:
zlib 1.2.5
iconv 1.14
gettext-runtime (-lintl) 1.18.1.1
libpng 1.5.4
giflib 4.1.6
jpeg 8c
libxml2 2.7.8
libxslt 1.1.26
expat 2.0.1
freetype2 2.4.6
fontconfig 2.8.0
pixman 0.23.2
pcre 8.13
glib 2.28.8
cairo 1.10.2
pango 1.28.4
gdk-pixbuf 2.24.0
atk 2.0.1
gtk+ 3.0.12
I've recently updated some of those versions and I am still working through
the full build, but its close.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]