Mercurial > emacs
comparison nt/INSTALL @ 35870:e3bd30e28be6
(Trouble-shooting): Add note about need to specify extra
compiler flags with recent Cygwin ports of gcc.
author | Andrew Innes <andrewi@gnu.org> |
---|---|
date | Sat, 03 Feb 2001 18:24:14 +0000 |
parents | 70ef76f45876 |
children | 9f0620f192bd |
comparison
equal
deleted
inserted
replaced
35869:42fcadee88a8 | 35870:e3bd30e28be6 |
---|---|
1 Building and Installing Emacs | 1 Building and Installing Emacs |
2 on Windows NT and Windows 95/98/2000 | 2 on Windows NT/2000 and Windows 95/98/ME |
3 | 3 |
4 To compile Emacs, you will need either Microsoft Visual C++ 2.0 or | 4 To compile Emacs, you will need either Microsoft Visual C++ 2.0 or |
5 later, or a Windows port of GCC 2.95 or later with Mingw and W32 API | 5 later, or a Windows port of GCC 2.95 or later with Mingw and W32 API |
6 support and a port of GNU make. You can use the Cygwin ports of GCC, | 6 support and a port of GNU make. You can use the Cygwin ports of GCC, |
7 but Emacs requires the Mingw headers and libraries to build. | 7 but Emacs requires the Mingw headers and libraries to build. |
8 | 8 |
9 If you build Emacs on Windows 9X or ME, not on Windows 2000 or | 9 If you build Emacs on Windows 9X or ME, not on Windows 2000 or |
10 Windows/NT, we suggest to install the Cygwin port of Bash. | 10 Windows NT, we suggest to install the Cygwin port of Bash. |
11 | 11 |
12 Please see http://www.mingw.org for pointers to GCC/Mingw binaries. | 12 Please see http://www.mingw.org for pointers to GCC/Mingw binaries. |
13 | 13 |
14 For reference, here is a list of which builds of GNU make are known | 14 For reference, here is a list of which builds of GNU make are known |
15 to work or not, and whether they work in the presence and/or absence | 15 to work or not, and whether they work in the presence and/or absence |
33 [2] fails when needs to invoke shell commands; okay invoking gcc etc. | 33 [2] fails when needs to invoke shell commands; okay invoking gcc etc. |
34 [3] requires LC_MESSAGES support to build; maybe 2.95.x update to | 34 [3] requires LC_MESSAGES support to build; maybe 2.95.x update to |
35 cygwin provides this? | 35 cygwin provides this? |
36 [4] may fail on Windows 9X and Windows ME; if so, install Bash. | 36 [4] may fail on Windows 9X and Windows ME; if so, install Bash. |
37 | 37 |
38 Configuring: | 38 * Configuring |
39 | 39 |
40 Configuration of Emacs is now handled by running configure.bat in the | 40 Configuration of Emacs is now handled by running configure.bat in the |
41 nt subdirectory. It will detect which compiler you have available, | 41 nt subdirectory. It will detect which compiler you have available, |
42 and generate makefiles accordingly. You can override the compiler | 42 and generate makefiles accordingly. You can override the compiler |
43 detection, and control optimization and debug settings, by specifying | 43 detection, and control optimization and debug settings, by specifying |
49 | 49 |
50 N.B. It is normal to see a few error messages output while configure | 50 N.B. It is normal to see a few error messages output while configure |
51 is running, when gcc support is being tested. These cannot be | 51 is running, when gcc support is being tested. These cannot be |
52 surpressed because of limitations in the Windows 9x command.com shell. | 52 surpressed because of limitations in the Windows 9x command.com shell. |
53 | 53 |
54 Building: | 54 * Building |
55 | 55 |
56 After running configure, simply run the appropriate `make' program for | 56 After running configure, simply run the appropriate `make' program for |
57 your compiler to build Emacs. For MSVC, this is nmake; for GCC, it is | 57 your compiler to build Emacs. For MSVC, this is nmake; for GCC, it is |
58 GNU make. | 58 GNU make. |
59 | 59 |
61 declaring that some functions don't return a value, or that some data | 61 declaring that some functions don't return a value, or that some data |
62 conversions will be lossy, etc. You can safely ignore these messages. | 62 conversions will be lossy, etc. You can safely ignore these messages. |
63 The warnings may be fixed in the main FSF source at some point, but | 63 The warnings may be fixed in the main FSF source at some point, but |
64 until then we will just live with them. | 64 until then we will just live with them. |
65 | 65 |
66 Installing: | 66 * Installing |
67 | 67 |
68 To install Emacs after it has compiled, simply run `make install'. | 68 To install Emacs after it has compiled, simply run `make install'. |
69 | 69 |
70 By default, Emacs will be installed in the location where it was | 70 By default, Emacs will be installed in the location where it was |
71 built, but a different location can be specified either using the | 71 built, but a different location can be specified either using the |
75 make install INSTALL_DIR=D:/emacs | 75 make install INSTALL_DIR=D:/emacs |
76 | 76 |
77 The install process will run addpm to setup the registry entries, and | 77 The install process will run addpm to setup the registry entries, and |
78 to create a Start menu icon for Emacs. | 78 to create a Start menu icon for Emacs. |
79 | 79 |
80 Trouble-shooting: | 80 * Trouble-shooting |
81 | 81 |
82 The main problems that are likely to be encountered when building | 82 The main problems that are likely to be encountered when building |
83 Emacs stem from using an old version of GCC, or old Mingw or W32 API | 83 Emacs stem from using an old version of GCC, or old Mingw or W32 API |
84 headers. Additionally, cygwin ports of GNU make may require the Emacs | 84 headers. Additionally, cygwin ports of GNU make may require the Emacs |
85 source tree to be mounted with text!=binary, because the makefiles | 85 source tree to be mounted with text!=binary, because the makefiles |
102 If configure succeeds, but make fails, install the Cygwin port of | 102 If configure succeeds, but make fails, install the Cygwin port of |
103 Bash, even if the table above indicates that Emacs should be able to | 103 Bash, even if the table above indicates that Emacs should be able to |
104 build without sh.exe. (Some versions of Windows shells are too dumb | 104 build without sh.exe. (Some versions of Windows shells are too dumb |
105 for Makefile's used by Emacs.) | 105 for Makefile's used by Emacs.) |
106 | 106 |
107 Debugging: | 107 If you are using a recent Cygwin build of GCC, such as Cygwin version |
108 1.1.8, you may need to specify some extra compiler flags like so: | |
109 | |
110 configure --with-gcc --cflags -mwin32 --cflags -D__MSVCRT__ | |
111 | |
112 We will attempt to auto-detect the need for these flags in a future | |
113 release. | |
114 | |
115 * Debugging | |
108 | 116 |
109 You should be able to debug Emacs using the debugger that is | 117 You should be able to debug Emacs using the debugger that is |
110 appropriate for the compiler you used, namely DevStudio or Windbg if | 118 appropriate for the compiler you used, namely DevStudio or Windbg if |
111 compiled with MSVC, or gdb if compiled with gcc. | 119 compiled with MSVC, or gdb if compiled with gcc. |
112 | 120 |