@@ -43,16 +43,20 @@ The currently preferred method is using the free Visual C++ Toolkit 2008
43
43
1. Microsoft Visual C++
44
44
=======================
45
45
46
+ We do not provide download links, since Microsoft keeps changing them. You
47
+ can search for "Visual C++ 2015 build tools", for example. You will need to
48
+ create a Microsoft account (it's free).
49
+
50
+
46
51
Visual Studio
47
52
-------------
48
53
49
54
Building with Visual Studio (VS 98, VS .NET, VS .NET 2003, VS 2005, VS 2008,
50
55
VS2010, VS2012, VS2013 and VS2015) is straightforward. (These instructions
51
56
should also work for VS 4 and VS 5.)
52
57
53
- Using VS C++ 2008 Express is recommended, the binaries built with that run on
54
- nearly all platforms. Binaries from later versions may not run on Windows 95
55
- or XP.
58
+ Using VS C++ 2008 Express is recommended if you need the binary to run on
59
+ Windows 95 or 97, see |msvc-2008-express| below.
56
60
57
61
To build Vim from the command line with MSVC, use Make_mvc.mak.
58
62
Visual Studio installed a batch file called vcvars32.bat, which you must
@@ -117,8 +121,8 @@ To set the environment execute the msvc2010.bat script. You can then build
117
121
Vim with Make_mvc.mak.
118
122
119
123
120
- Targeting Windows XP with new MSVC *new-msvc-windows-xp*
121
- ----------------------------------
124
+ Targeting Windows XP with MSVC 2012 and later *new-msvc-windows-xp*
125
+ ---------------------------------------------
122
126
123
127
Beginning with Visual C++ 2012, Microsoft changed the behavior of LINK.EXE
124
128
so that it targets Windows 6.0 (Vista) by default. In order to override
@@ -127,16 +131,28 @@ follows:
127
131
LINK ... /subsystem:console,5.01
128
132
129
133
Make_mvc.mak now supports a macro SUBSYSTEM_VER to pass the Windows version.
130
- Use lines like follows to target Windows XP (assuming using Visual C++ 2012
131
- under 64-bit Windows):
134
+ Use lines like follows to target Windows XP x86 (assuming using Visual C++
135
+ 2012 under 64-bit Windows):
132
136
set WinSdk71=%ProgramFiles(x86)%\Microsoft SDKs\Windows\v7.1A
133
- set SDK_INCLUDE_DIR=%WinSdk71%\Include
134
137
set INCLUDE=%WinSdk71%\Include;%INCLUDE%
135
138
set LIB=%WinSdk71%\Lib;%LIB%
136
- set PATH=%WinSdk71%\Bin;%PATH%
137
139
set CL=/D_USING_V110_SDK71_
138
140
nmake -f Make_mvc.mak ... WINVER=0x0501 SUBSYSTEM_VER=5.01
139
141
142
+ To target Windows XP x64 instead of x86, you need to change the settings of
143
+ LIB and SUBSYSTEM_VER:
144
+ ...
145
+ set LIB=%WinSdk71%\Lib\x64;%LIB%
146
+ ...
147
+ nmake -f Make_mvc.mak ... WINVER=0x0501 SUBSYSTEM_VER=5.02
148
+
149
+ If you use Visual C++ 2015 (either Express or Community Edition), executing
150
+ msvc2015.bat will set them automatically. For x86 builds run this without
151
+ options:
152
+ msvc2015
153
+ For x64 builds run this with the "x86_amd64" option:
154
+ msvc2015 x86_amd64
155
+
140
156
The following Visual C++ team blog can serve as a reference page:
141
157
http://blogs.msdn.com/b/vcblog/archive/2012/10/08/windows-xp-targeting-with-c-in-visual-studio-2012.aspx
142
158
@@ -482,14 +498,24 @@ You need to set the following variables:
482
498
E.g. C:\Program Files (x86)\Racket
483
499
DYNAMIC_MZSCHEME: Whether dynamic linking is used. Usually, set to yes.
484
500
MZSCHEME_VER: Racket DLL version which is used for the file name.
485
- E.g. 3m_9z0ds0 for Racket 6.3 .
501
+ See below for a list of MZSCHEME_VER .
486
502
The DLL can be found under the lib directory. E.g.
487
503
C:\Program Files (x86)\Racket\lib\libracket3m_XXXXXX.dll
488
504
MZSCHEME_COLLECTS: (Optional) Path of the collects directory used at
489
505
runtime. Default: $(MZSCHEME)\collects
490
506
User can override this with the PLTCOLLECTS environment
491
507
variable.
492
508
509
+ List of MZSCHEME_VER (incomplete):
510
+
511
+ Racket ver. | MZSCHEME_VER
512
+ ==========================
513
+ 6.3 | 3m_9z0ds0
514
+ 6.6 | 3m_a0solc
515
+ 6.8 | 3m_a1zjsw
516
+ 6.10 | 3m_a36fs8
517
+
518
+
493
519
E.g. When using MSVC (as one line):
494
520
495
521
nmake -f Make_mvc.mak
0 commit comments