I've always been really uncomfortable with Visual Studio. Not only is it an unwieldy behemoth to use, but it also seems to enforce the recent Microsoft policy of not linking against their system C runtime (MSVCRT.dll), but rather against a versioned DLL (MSVCRTXX.dll) that the developer is expected to provide. For those interested, there's more backstory
here and
here. It's an annoying practice, since Microsoft's own apps (e.g. notepad.exe) themselves have linked against MSVCRT.dll since forever - making it an essential system component.
The solution? The author of the latter blog post provided a set of scripts that set up a command-line build environment with a tool-chain that supports MSVCRT.dll linking. I've removed the remaining dependencies on Visual Studio, meaning that only two components are required for this build:
- the Windows Driver Development Kit (yes, you read that right! The DDK contains the toolchain necessary for linking against MSVCRT.dll)
- the Windows SDK
both of which are provided as free downloads by Microsoft. The modified scripts can be found
here.
As I've added the complete build instructions to my
r1q2.txt, I won't repeat them here. In that git repo are also NMAKE Makefiles, which the instructions rely upon. If you happen to run into any problems (I've tested this only on Win7 x64), feel free to let me know!