comparison INSTALL @ 99467:41a356a46f3f

Move MS-DOS specific instructions to msdos/INSTALL.
author Eli Zaretskii <eliz@gnu.org>
date Sat, 08 Nov 2008 19:06:59 +0000
parents 7d9a5b179102
children cf89f5c49828
comparison
equal deleted inserted replaced
99466:a25bb5bc03e4 99467:41a356a46f3f
3 2005, 2006, 2007, 2008 Free Software Foundation, Inc. 3 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
4 See the end of the file for license conditions. 4 See the end of the file for license conditions.
5 5
6 6
7 This file contains general information. For more specific information 7 This file contains general information. For more specific information
8 for the Windows, and GNUstep/Mac OS X ports, also see the files 8 for the Windows, GNUstep/Mac OS X, and MS-DOS ports, also see the files
9 nt/INSTALL and nextstep/INSTALL. 9 nt/INSTALL nextstep/INSTALL, and msdos/INSTALL.
10 10
11 11
12 BASIC INSTALLATION 12 BASIC INSTALLATION
13 13
14 The simplest way to build Emacs is to use the `configure' shell script 14 The simplest way to build Emacs is to use the `configure' shell script
227 227
228 228
229 DETAILED BUILDING AND INSTALLATION: 229 DETAILED BUILDING AND INSTALLATION:
230 230
231 (This is for a Unix or Unix-like system. For MS-DOS and Windows 3.X, 231 (This is for a Unix or Unix-like system. For MS-DOS and Windows 3.X,
232 see below; search for MSDOG. For Windows 9X, Windows ME, Windows NT, 232 see msdos/INSTALL. For Windows 9X, Windows ME, Windows NT, Windows
233 Windows 2000, Windows XP/2003, and Windows Vista/2008, see the file 233 2000, Windows XP/2003, and Windows Vista/2008, see the file
234 nt/INSTALL. For GNUstep and Mac OS X, see nextstep/INSTALL.) 234 nt/INSTALL. For GNUstep and Mac OS X, see nextstep/INSTALL.)
235 235
236 1) Make sure your system has enough swapping space allocated to handle 236 1) Make sure your system has enough swapping space allocated to handle
237 a program whose pure code is 1.5 MB and whose data area is at 237 a program whose pure code is 1.5 MB and whose data area is at
238 least 2.8 MB and can reach 100 MB or more. If the swapping space is 238 least 2.8 MB and can reach 100 MB or more. If the swapping space is
794 794
795 PROBLEMS 795 PROBLEMS
796 796
797 See the file PROBLEMS in etc subdirectory for a list of various 797 See the file PROBLEMS in etc subdirectory for a list of various
798 problems sometimes encountered, and what to do about them. 798 problems sometimes encountered, and what to do about them.
799
800
801 Installation on MSDOG (a.k.a. MSDOS)
802
803 To install on MSDOG, you need to have the GNU C compiler for MSDOG
804 (also known as djgpp), GNU Make, rm, mv, and sed. See the remarks in
805 config.bat for more information about locations and versions. The
806 file etc/FAQ includes pointers to Internet sites where you can find
807 the necessary utilities; search for "MS-DOS". The configuration step
808 (see below) will test for these utilities and will refuse to continue
809 if any of them isn't found.
810
811 Recompiling Lisp files in the `lisp' subdirectory using the various
812 targets in the lisp/Makefile file requires additional utilities:
813 `find' and `xargs' (from Findutils), `touch' (from Fileutils) GNU
814 `echo' and `test' (from Sh-utils), `tr, `sort', and `uniq' (from
815 Textutils), and a port of Bash. However, you should not normally need
816 to run lisp/Makefile, as all the Lisp files are distributed in
817 byte-compiled form as well.
818
819 If you are building the MSDOG version of Emacs on an MSDOG-like system
820 which supports long file names (e.g. Windows 9X or Windows XP), you
821 need to make sure that long file names are handled consistently both
822 when you unpack the distribution and compile it. If you intend to
823 compile with DJGPP v2.0 or later, and long file names support is
824 enabled (LFN=y in the environment), you need to unpack Emacs
825 distribution in a way that doesn't truncate the original long
826 filenames to the DOS 8.3 namespace; the easiest way to do this is to
827 use djtar program which comes with DJGPP, since it will note the LFN
828 setting and behave accordingly. DJGPP v1 doesn't support long
829 filenames, so you must unpack Emacs with a program that truncates the
830 filenames to 8.3 naming as it extracts files; again, using djtar after
831 setting LFN=n is the recommended way. You can build Emacs with LFN=n
832 even if you use DJGPP v2, if some of your tools don't support long
833 file names: just ensure that LFN is set to `n' during both unpacking
834 and compiling.
835
836 (By the time you read this, you have already unpacked the Emacs
837 distribution, but if the explanations above imply that you should have
838 done it differently, it's safer to delete the directory tree created
839 by the unpacking program and unpack Emacs again, than to risk running
840 into problems during the build process.)
841
842 It is important to understand that the runtime support of long file
843 names by the Emacs binary is NOT affected by the LFN setting during
844 compilation; Emacs compiled with DJGPP v2.0 or later will always
845 support long file names on Windows no matter what was the setting
846 of LFN at compile time. However, if you compiled with LFN disabled
847 and want to enable LFN support after Emacs was already built, you need
848 to make sure that the support files in the lisp, etc and info
849 directories are called by their original long names as found in the
850 distribution. You can do this either by renaming the files manually,
851 or by extracting them from the original distribution archive with
852 djtar after you set LFN=y in the environment.
853
854 To unpack Emacs with djtar, type this command:
855
856 djtar -x emacs.tgz
857
858 (This assumes that the Emacs distribution is called `emacs.tgz' on
859 your system.)
860
861 If you want to print international characters, install the intlfonts
862 distribution. For this, create a directory called `fonts' under the
863 Emacs top-level directory (usually called `emacs-XX.YY') created by
864 unpacking emacs.tgz, chdir into the directory emacs-XX.YY/fonts, and
865 type this:
866
867 djtar -x intlfonts.tgz
868
869 When unpacking is done, a directory called `emacs-XX.YY' will be
870 created, where XX.YY is the Emacs version. To build and install
871 Emacs, chdir to that directory and type these commands:
872
873 config msdos
874 make install
875
876 Running "config msdos" checks for several programs that are required
877 to configure and build Emacs; if one of those programs is not found,
878 CONFIG.BAT stops and prints an error message. If you have DJGPP
879 version 2.0 or 2.01, it will complain about a program called
880 DJECHO.EXE. These old versions of DJGPP shipped that program under
881 the name ECHO.EXE, so you can simply copy ECHO.EXE to DJECHO.EXE and
882 rerun CONFIG.BAT. If you have neither ECHO.EXE nor DJECHO.EXE, you
883 should be able to find them in your djdevNNN.zip archive (where NNN is
884 the DJGPP version number).
885
886 On Windows NT, Windows 2000/XP/Vista, running "config msdos" might
887 print an error message like "VDM has been already loaded". This is
888 because those systems have a program called `redir.exe' which is
889 incompatible with a program by the same name supplied with DJGPP,
890 which is used by config.bat. To resolve this, move the DJGPP's `bin'
891 subdirectory to the front of your PATH environment variable.
892
893 To install the international fonts, chdir to the intlfonts-X.Y
894 directory created when you unpacked the intlfonts distribution (X.Y is
895 the version number of the fonts' distribution), and type the following
896 command:
897
898 make bdf INSTALLDIR=..
899
900 After Make finishes, you may remove the directory intlfonts-X.Y; the
901 fonts are installed into the fonts/bdf subdirectory of the top-level
902 Emacs directory, and that is where Emacs will look for them by
903 default.
904
905 Building Emacs creates executable files in the src and lib-src
906 directories. Installing Emacs on MSDOS moves these executables to a
907 sibling directory called bin. For example, if you build in directory
908 /emacs, installing moves the executables from /emacs/src and
909 /emacs/lib-src to the directory /emacs/bin, so you can then delete the
910 subdirectories /emacs/src and /emacs/lib-src if you wish. The only
911 subdirectories you need to keep are bin, lisp, etc and info. (If you
912 installed intlfonts, keep the fonts directory and all its
913 subdirectories as well.) The bin subdirectory should be added to your
914 PATH. The msdos subdirectory includes a PIF and an icon file for
915 Emacs which you might find useful if you run Emacs under MS Windows.
916
917 Emacs on MSDOS finds the lisp, etc and info directories by looking in
918 ../lisp, ../etc and ../info, starting from the directory where the
919 Emacs executable was run from. You can override this by setting the
920 environment variables EMACSDATA (for the location of `etc' directory),
921 EMACSLOADPATH (for the location of `lisp' directory) and INFOPATH (for
922 the location of the `info' directory).
923
924 MSDOG is a not a multitasking operating system, so Emacs features such
925 as asynchronous subprocesses that depend on multitasking will not
926 work. Synchronous subprocesses do work.
927
928 Version 2.0 of djgpp has two bugs that affect Emacs. We've included
929 corrected versions of two files from djgpp in the msdos subdirectory:
930 is_exec.c and sigaction.c. To work around the bugs, compile these
931 files and link them into temacs. Djgpp versions 2.01 and later have
932 these bugs fixed, so upgrade if you can before building Emacs.
933 799
934 This file is part of GNU Emacs. 800 This file is part of GNU Emacs.
935 801
936 GNU Emacs is free software: you can redistribute it and/or modify 802 GNU Emacs is free software: you can redistribute it and/or modify
937 it under the terms of the GNU General Public License as published by 803 it under the terms of the GNU General Public License as published by