"Fossies" - the Fresh Open Source Software Archive

Member "emacs-26.1/msdos/INSTALL" (25 May 2018, 7677 Bytes) of package /linux/misc/emacs-26.1.tar.xz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes report for "INSTALL": 25.3_vs_26.1.

    1 GNU Emacs Installation Guide for the DJGPP (a.k.a. MS-DOS) port
    2 
    3 Copyright (C) 1992, 1994, 1996-1997, 2000-2018 Free Software Foundation,
    4 Inc.
    5 See the end of the file for license conditions.
    6 
    7 The DJGPP port of GNU Emacs builds and runs on all versions of
    8 MS-Windows from version 3.X on, including Windows XP, Vista, and
    9 Windows 7 (however, see below for issues with Windows Vista and 7).
   10 Building on plain MS-DOS is supported only if long file names are
   11 supported (e.g., with a specialized driver such as doslfn).
   12 
   13 To build and install the DJGPP port, you need to have the DJGPP ports
   14 of GCC (the GNU C compiler), GNU Make, rm, mv, cp, and sed, and
   15 version 2.02 or later of DJGPP itself.  See the remarks in CONFIG.BAT
   16 for more information about locations and versions.  The Emacs FAQ (see
   17 info/efaq.info) includes pointers to Internet sites where you can find
   18 the necessary utilities; search for "MS-DOS".  The configuration step
   19 (see below) will test for these utilities and will refuse to continue
   20 if any of them isn't found.
   21 
   22 You should carefully choose the version of GCC you use to build Emacs,
   23 because recent versions of GCC don't support building Emacs very well.
   24 The main issue is the debug info: the DJGPP build of Emacs must use
   25 the COFF debug info.  GCC support for COFF debug info was steadily
   26 deteriorating since GCC 5, and GCC 8.1 officially stopped supporting
   27 the -gcoff switch, which the Emacs build process needs.  We recommend
   28 using GCC 3.4.X and Binutils 2.26; GDB 7.2 is capable to debug an
   29 Emacs binary built by this combination.
   30 
   31 Bootstrapping Emacs or recompiling Lisp files in the `lisp'
   32 subdirectory using the various targets in the lisp/Makefile file
   33 requires additional utilities: `find' (from Findutils), GNU `echo' and
   34 `test' (from Sh-utils or Coreutils), `ls' and `chmod' (from Fileutils
   35 or Coreutils), `grep' (from Grep), and a port of Bash.  However, you
   36 should not normally need to run lisp/Makefile, as all the Lisp files
   37 are distributed in byte-compiled form as well.  As for bootstrapping
   38 itself, you will only need that if you check-out development sources
   39 from the Emacs source repository.
   40 
   41 Building the DJGPP version of Emacs is supported only on systems which
   42 support long file names (e.g. Windows 9X or Windows XP).  You need to
   43 unpack Emacs distribution in a way that doesn't truncate the original
   44 long filenames to the DOS 8.3 namespace; the easiest way to do this is
   45 to use djtar program which comes with DJGPP, since it will behave
   46 consistently with the rest of DJGPP tools.  Do _not_ disable the DJGPP
   47 long-file-name support (a.k.a. "LFN") while building Emacs.
   48 
   49 (By the time you read this, you have already unpacked the Emacs
   50 distribution, but if the explanations above imply that you should have
   51 done it differently, it's safer to delete the directory tree created
   52 by the unpacking program and unpack Emacs again, than to risk running
   53 into strange problems during the build process.)
   54 
   55 To unpack Emacs with djtar, type this command:
   56 
   57     djtar -x emacs.tgz
   58 
   59 (This assumes that the Emacs distribution is called `emacs.tgz' on
   60 your system.)
   61 
   62 When unpacking Emacs is done, a directory called `emacs-XX.YY' will be
   63 created, where XX.YY is the Emacs version.
   64 
   65 If you want to print international characters, install the intlfonts
   66 distribution.  For this, create a directory called `fonts' under the
   67 `emacs-XX.YY' top-level directory created by unpacking emacs.tgz,
   68 chdir into the directory `emacs-XX.YY/fonts', and type this:
   69 
   70     djtar -x intlfonts.tgz
   71 
   72 To build and install Emacs, chdir to the `emacs-XX.YY' directory and
   73 type these commands:
   74 
   75     config msdos
   76     make install
   77 
   78 Running "config msdos" checks for several programs that are required
   79 to configure and build Emacs; if one of those programs is not found,
   80 CONFIG.BAT stops and prints an error message.
   81 
   82 On Windows NT and Windows 2000/XP and later, running "config msdos"
   83 might print an error message like "VDM has been already loaded".  This
   84 is because those systems have a program called `redir.exe' which is
   85 incompatible with a program by the same name supplied with DJGPP,
   86 which is used by config.bat.  To resolve this, move the DJGPP's `bin'
   87 subdirectory to the front of your PATH environment variable.
   88 
   89 Windows Vista and later has several bugs in its DPMI server related to
   90 memory allocation: it fails DPMI resize memory block function, and it
   91 arbitrarily limits the default amount of DPMI memory to 32MB.  To work
   92 around these bugs, first configure Emacs to use the `malloc' function
   93 from the DJGPP library.  To this end, run CONFIG.BAT with the
   94 "--with-system-malloc" option:
   95 
   96     config --with-system-malloc msdos
   97     make install
   98 
   99 In addition, for Windows Vista you'll need to install Service Pack 1
  100 (SP1) or later and enlarge its DPMI memory limit by setting the value
  101 of this Registry key:
  102 
  103   HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Wow\DpmiLimit
  104 
  105 Create this key if it does not exist.  The value is a DWORD; setting
  106 it to 536870912 should let Emacs use up to 512MB of memory.
  107 
  108 If you have other problems, either building Emacs or running the
  109 produced binary, look in the file etc/PROBLEMS for some known problems
  110 related to the DJGPP port (search for "MS-DOS").
  111 
  112 To install the international fonts, chdir to the intlfonts-X.Y
  113 directory created when you unpacked the intlfonts distribution (X.Y is
  114 the version number of the fonts' distribution), and type the following
  115 command:
  116 
  117     make bdf INSTALLDIR=..
  118 
  119 After Make finishes, you may remove the directory intlfonts-X.Y; the
  120 fonts are installed into the fonts/bdf subdirectory of the top-level
  121 Emacs directory, and that is where Emacs will look for them by
  122 default.
  123 
  124 Building Emacs creates executable files in the src and lib-src
  125 directories.  Installing the DJGPP port of Emacs moves these
  126 executables to a sibling directory called bin.  For example, if you
  127 build in directory C:/emacs, installing moves the executables from
  128 C:/emacs/src and C:/emacs/lib-src to the directory C:/emacs/bin, so
  129 you can then delete the subdirectories C:/emacs/src and
  130 C:/emacs/lib-src if you wish.  The only subdirectories you need to
  131 keep are bin, lisp, etc and info.  (If you installed intlfonts, keep
  132 the fonts directory and all its subdirectories as well.)  The bin
  133 subdirectory should be added to your PATH.  The msdos subdirectory
  134 includes a PIF and an icon file for Emacs which you might find useful
  135 if you run Emacs under MS Windows.
  136 
  137 Emacs on MSDOS finds the lisp, etc and info directories by looking in
  138 ../lisp, ../etc and ../info, starting from the directory where the
  139 Emacs executable was run from.  You can override this by setting the
  140 environment variables EMACSDATA (for the location of `etc' directory),
  141 EMACSLOADPATH (for the location of `lisp' directory) and INFOPATH (for
  142 the location of the `info' directory).
  143 
  144 Emacs features which require asynchronous subprocesses that depend on
  145 multitasking do not work in the DJGPP port.  Synchronous subprocesses
  146 do work, so features such as compilation, grep, and Ispell run
  147 synchronously, unlike on other platforms.
  148 
  149 
  150 This file is part of GNU Emacs.
  151 
  152 GNU Emacs is free software: you can redistribute it and/or modify
  153 it under the terms of the GNU General Public License as published by
  154 the Free Software Foundation, either version 3 of the License, or
  155 (at your option) any later version.
  156 
  157 GNU Emacs is distributed in the hope that it will be useful,
  158 but WITHOUT ANY WARRANTY; without even the implied warranty of
  159 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  160 GNU General Public License for more details.
  161 
  162 You should have received a copy of the GNU General Public License
  163 along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.