[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: Size of TSVN msi installer, need your opinion

From: Gavin Lambert <colnet_at_mirality.co.nz>
Date: Sun, 13 Sep 2015 20:58:25 -0700 (PDT)

On 12/09/2015 21:03, Stefan Küng wrote:
> But linking the c-runtime statically lead now to other problems:
> http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=3136728
> That's because the c-runtime keeps global state memory for every dll
> separately. This unfortunately includes output to stdout, for which
> there is no workaround.
> So now I could change the TSVN build to link *everything* statically,
> getting rid of the apr/svn dlls. But that means that every exe now
> increases in size. Especially all the command line exe (svn, svnadmin,
> svnserve, svnversion, ...).

Note that it is required by CRT law to either link everything statically, or everything dynamically, or to ensure that no CRT state crosses the different-CRT boundaries. This includes memory allocations -- objects created by new/malloc on one side can be passed over the line as pointers but must be passed back again and delete/freed only on their original "side". This also means that eg. you can never pass std::string or most other STL objects over the line.

So this decision might be forced for you, depending on what you're doing. :)

> 1.9.0 32-bit : 15.8MB
> 1.9.0 64-bit : 20.3MB
> fully static link:
> 32-bit : 30.8MB
> 64-bit : 39.2MB
> So the 64-bit msi is almost 40MB in size now.

I don't think anyone really cares about this level of size increase any more. Even someone on dial-up could download that in a couple of minutes.


To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2015-09-14 05:58:34 CEST

This is an archived mail posted to the TortoiseSVN Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.