15 |
(.bat files, nmake.defs and makefile.w32-in) may need the line-ends |
(.bat files, nmake.defs and makefile.w32-in) may need the line-ends |
16 |
fixing first. The easiest way to do this and avoid future conflicts |
fixing first. The easiest way to do this and avoid future conflicts |
17 |
is to run the following command in this (emacs/nt) directory: |
is to run the following command in this (emacs/nt) directory: |
18 |
|
|
19 |
cvs update -kb |
cvs update -kb |
20 |
|
|
21 |
|
(WARNING: Do NOT use this suggestion if you have write access to the |
22 |
|
Emacs CVS tree and intend to commit changes to CVS. This is because -kb |
23 |
|
is sticky: it will be used in all future CVS operations on the files you |
24 |
|
check out like this.) Alternatively, use programs that convert |
25 |
|
end-of-line format, such as dos2unix and unix2dos available from |
26 |
|
GnuWin32 or dtou and utod from the DJGPP project. |
27 |
|
|
28 |
In addition to this file, you should also read INSTALL.CVS in the |
In addition to this file, you should also read INSTALL.CVS in the |
29 |
parent directory, and make sure that you have a version of "touch.exe" |
parent directory, and make sure that you have a version of |
30 |
in your path, and that it will create files that do not yet exist. |
"touch.exe" in your path, and that it will create files that do not |
31 |
|
yet exist. |
32 |
|
|
33 |
To compile Emacs, you will need either Microsoft Visual C++ 2.0 or |
To compile Emacs, you will need either Microsoft Visual C++ 2.0 or |
34 |
later and nmake, or a Windows port of GCC 2.95 or later with MinGW |
later and nmake, or a Windows port of GCC 2.95 or later with MinGW |
61 |
|
|
62 |
http://www.emacswiki.org/cgi-bin/wiki/WThirtyTwoInstallationKit |
http://www.emacswiki.org/cgi-bin/wiki/WThirtyTwoInstallationKit |
63 |
|
|
64 |
|
and at this URL: |
65 |
|
|
66 |
|
http://ourcomments.org/Emacs/w32-build-emacs.html |
67 |
|
|
68 |
For reference, here is a list of which builds of GNU make are known |
For reference, here is a list of which builds of GNU make are known |
69 |
to work or not, and whether they work in the presence and/or absence |
to work or not, and whether they work in the presence and/or absence |
70 |
of sh.exe, the Cygwin port of Bash. Note that any version of make |
of sh.exe, the Cygwin port of Bash. Note that any version of make |
91 |
cygwin compiled make 3.78.1: fails[5] fails[2, 5] |
cygwin compiled make 3.78.1: fails[5] fails[2, 5] |
92 |
cygwin compiled make 3.79.1: fails[3, 5] fails[2?, 5] |
cygwin compiled make 3.79.1: fails[3, 5] fails[2?, 5] |
93 |
mingw32 compiled make 3.79.1: okay okay |
mingw32 compiled make 3.79.1: okay okay |
94 |
|
mingw32 compiled make 3.80: okay unknown[6] |
95 |
|
|
96 |
Notes: |
Notes: |
97 |
|
|
103 |
[4] may fail on Windows 9X and Windows ME; if so, install Bash. |
[4] may fail on Windows 9X and Windows ME; if so, install Bash. |
104 |
[5] fails when building leim due to the use of cygwin style paths. |
[5] fails when building leim due to the use of cygwin style paths. |
105 |
May work if building emacs without leim. |
May work if building emacs without leim. |
106 |
|
[6] please report if you try this combination. |
107 |
|
|
108 |
* Configuring |
* Configuring |
109 |
|
|
121 |
is running, when gcc support is being tested. These cannot be |
is running, when gcc support is being tested. These cannot be |
122 |
surpressed because of limitations in the Windows 9x command.com shell. |
surpressed because of limitations in the Windows 9x command.com shell. |
123 |
|
|
124 |
|
You are encouraged to look at the file config.log which shows details |
125 |
|
for failed tests, after configure.bat finishes. Any unexplained failure |
126 |
|
should be investigated and perhaps reported as a bug (see the section |
127 |
|
about reporting bugs in the file README in this directory and in the |
128 |
|
Emacs manual). |
129 |
|
|
130 |
* Optional image library support |
* Optional image library support |
131 |
|
|
132 |
In addition to its "native" image formats (pbm and xbm), Emacs can |
In addition to its "native" image formats (pbm and xbm), Emacs can |
136 |
configure script is run. This can be setup using environment |
configure script is run. This can be setup using environment |
137 |
variables, or by specifying --cflags -I... options on the command-line |
variables, or by specifying --cflags -I... options on the command-line |
138 |
to configure.bat. The configure script will report whether it was |
to configure.bat. The configure script will report whether it was |
139 |
able to detect the headers. |
able to detect the headers. If the results of this testing appear to be |
140 |
|
incorrect, please look for details in the file config.log: it will show |
141 |
|
the failed test programs and compiler error messages that should explain |
142 |
|
what is wrong. (Usually, any such failures happen because some headers |
143 |
|
are missing due to bad packaging of the image support libraries.) |
144 |
|
|
145 |
To use the external image support, the DLLs implementing the |
To use the external image support, the DLLs implementing the |
146 |
functionality must be found when Emacs first needs them, either on the |
functionality must be found when Emacs first needs them, either on the |
159 |
|
|
160 |
Binaries for the image libraries (among many others) can be found at |
Binaries for the image libraries (among many others) can be found at |
161 |
the GnuWin32 project. These are built with MinGW, but they can be |
the GnuWin32 project. These are built with MinGW, but they can be |
162 |
used with both GCC/MinGW and MSVC builds of Emacs. |
used with both GCC/MinGW and MSVC builds of Emacs. See the info on |
163 |
|
http://ourcomments.org/Emacs/w32-build-emacs.html for more details about |
164 |
|
installing image support libraries. |
165 |
|
|
166 |
* Building |
* Building |
167 |
|
|
215 |
addsection.c relies on. Versions of w32api-xxx.zip from at least |
addsection.c relies on. Versions of w32api-xxx.zip from at least |
216 |
1999-11-18 onwards are okay. |
1999-11-18 onwards are okay. |
217 |
|
|
218 |
|
When in doubt about correctness of what configure did, look at the file |
219 |
|
config.log, which shows all the failed test programs and compiler |
220 |
|
messages associated with the failures. If that doesn't give a clue, |
221 |
|
please report the problems, together with the relevant fragments from |
222 |
|
config.log, as bugs. |
223 |
|
|
224 |
If configure succeeds, but make fails, install the Cygwin port of |
If configure succeeds, but make fails, install the Cygwin port of |
225 |
Bash, even if the table above indicates that Emacs should be able to |
Bash, even if the table above indicates that Emacs should be able to |
226 |
build without sh.exe. (Some versions of Windows shells are too dumb |
build without sh.exe. (Some versions of Windows shells are too dumb |