DLL Distribution
(On Windows)
RCOS 6/30/15
Robert Rouhani
SharpFont
- FreeType2 wrapper
- Need to distribute freetype dll
In the beginning...
There was the one and only msvcrt.dll
It was supposed to be forwards compatible
But Then...
Companies started hooking in to the C runtime internals
An update to msvcrt.dll would have broken widely-used applications.
Windows was built to be compatible.
DLL Hell
(is a place where you will go at the first sign of defiance)
In 2002, a new C runtime was released with the .NET framework
msvcrt70.dll
And with each new version of Visual Studio comes a new CRT
msvcrt71.dll
msvcrt80.dll
msvcrt90.dll
msvcrt100.dll
msvrct110.dll
msvcrt120.dll <----(Visual Studio 2013)
Redistributables

Redistributables
- Can't guarantee users have it
- Can't make users find it themselves
- Can't copy in your msvcrtXXX.dll
- Have to distribute an installer
Compatibility
- Eventually new CRT won't work on old Windows
- Old compilers get harder to install over time
- Each extra compiler is 600+ MB
Solution
TODO: Add the rest of the presentation based off
the web browsing I was doing during actual presentation