Werner LEMBERG | 4 Feb 16:29
Picon

[ft] ttfautohint: separate GUI and console binaries


Folks,

it took me a whole week of intensive documentation reading and
compilation experiments, asking on various mailing list, etc., etc.,
to eventually find out that I need two binaries on Windows, one for
the console and one for the GUI.  For consistency I've decided to
create two binaries for all platform.

Sigh.  It's simply not possible to make a Windows program behave the
same way as a POSIX one.  I haven't believed it, now I know :-| Well,
I'm an absolute beginner w.r.t. to Windows programming...

After building from the current git there is now a `ttfautohint' and
`ttfautohintGUI' binary.  It compiles nicely on Windows also; I've
successfully used MinGW (but please check the `INSTALL.git' file for
more details).  The only drawback of creating a static GUI binary on
Windows is its size: Due to the Qt libraries it's about 8MByte
(compared to 150kByte on GNU/Linux using Qt DLLs).

I invite the adventurous user to compile and test!  If everything
works fine, I'll release a new version in a few days.

   Werner
Wojciech Mamrak | 4 Feb 18:03
Picon

Re: [ft] ttfautohint: separate GUI and console binaries

Hi Werner,

may I ask about reasons of using static Qt libraries on windows? Or
maybe I have misunderstood you totally?

regards

2012/2/4 Werner LEMBERG <wl <at> gnu.org>:
>
> Folks,
>
>
> it took me a whole week of intensive documentation reading and
> compilation experiments, asking on various mailing list, etc., etc.,
> to eventually find out that I need two binaries on Windows, one for
> the console and one for the GUI.  For consistency I've decided to
> create two binaries for all platform.
>
> Sigh.  It's simply not possible to make a Windows program behave the
> same way as a POSIX one.  I haven't believed it, now I know :-| Well,
> I'm an absolute beginner w.r.t. to Windows programming...
>
> After building from the current git there is now a `ttfautohint' and
> `ttfautohintGUI' binary.  It compiles nicely on Windows also; I've
> successfully used MinGW (but please check the `INSTALL.git' file for
> more details).  The only drawback of creating a static GUI binary on
> Windows is its size: Due to the Qt libraries it's about 8MByte
> (compared to 150kByte on GNU/Linux using Qt DLLs).
>
> I invite the adventurous user to compile and test!  If everything
(Continue reading)

Werner LEMBERG | 4 Feb 19:03
Picon

Re: [ft-devel] [ft] ttfautohint: separate GUI and console binaries


> may I ask about reasons of using static Qt libraries on windows?  Or
> maybe I have misunderstood you totally?

The only reason is to make the distribution of the binaries easier.
Actually, I don't see much difference in having a smaller
`ttfautohintGUI.exe' which must be then distributed with `qtcore4.dll'
and `qtgui4.dll'.  Due to the lack of a standard packaging system on
Windows, I have to always provide the Qt libraries, either statically
linked into the application or these two DLLs.

Note that there is some code which could be shared between ttfautohint
and ttfautohintGUI: the MinGW runtime and the FreeType library.
However, since I need FreeType 2.4.5 or newer which is not distributed
everywhere by default (in particular I got problem reports from Macs)
I think it's better to have them statically linked also.

    Werner
Wojciech Mamrak | 4 Feb 20:52
Picon

Re: [ft] ttfautohint: separate GUI and console binaries

Ok, I was just curious why are you "complaining" on size of the binary
under Windows while it is possible to reduce it by choosing other
linking method.

2012/2/4 Werner LEMBERG <wl <at> gnu.org>:
>
>> may I ask about reasons of using static Qt libraries on windows?  Or
>> maybe I have misunderstood you totally?
>
> The only reason is to make the distribution of the binaries easier.
> Actually, I don't see much difference in having a smaller
> `ttfautohintGUI.exe' which must be then distributed with `qtcore4.dll'
> and `qtgui4.dll'.  Due to the lack of a standard packaging system on
> Windows, I have to always provide the Qt libraries, either statically
> linked into the application or these two DLLs.
>
> Note that there is some code which could be shared between ttfautohint
> and ttfautohintGUI: the MinGW runtime and the FreeType library.
> However, since I need FreeType 2.4.5 or newer which is not distributed
> everywhere by default (in particular I got problem reports from Macs)
> I think it's better to have them statically linked also.
>
>
>    Werner

Gmane