X-Git-Url: https://git.hcoop.net/bpt/emacs.git/blobdiff_plain/8d16df0eec002109fd5373ea870504f3632219c7..09faee72dd0743a5b46444b5e917ee1259843788:/INSTALL diff --git a/INSTALL b/INSTALL index 2eab03975f..f5c9d8f44e 100644 --- a/INSTALL +++ b/INSTALL @@ -1,5 +1,5 @@ GNU Emacs Installation Guide -Copyright (C) 1992, 1994, 1996-1997, 2000-2012 +Copyright (C) 1992, 1994, 1996-1997, 2000-2013 Free Software Foundation, Inc. See the end of the file for license conditions. @@ -70,24 +70,17 @@ sections if you need to. you, but there are no obvious errors, assume that `configure' did its job and proceed. - 4. If you need to run the `configure' script more than once (e.g., - with some non-default options), always clean the source - directories before running `configure' again: - - make distclean - ./configure - - 5. Invoke the `make' program: + 4. Invoke the `make' program: make - 6. If `make' succeeds, it will build an executable program `emacs' + 5. If `make' succeeds, it will build an executable program `emacs' in the `src' directory. You can try this program, to make sure it works: src/emacs -Q - 7. Assuming that the program `src/emacs' starts and displays its + 6. Assuming that the program `src/emacs' starts and displays its opening screen, you can install the program and its auxiliary files into their installation directories: @@ -101,6 +94,10 @@ sections if you need to. You can delete the entire build directory if you do not plan to build Emacs again, but it can be useful to keep for debugging. + If you want to build Emacs again with different configure options, + first clean the source directories: + + make distclean Note that the install automatically saves space by compressing (provided you have the `gzip' program) those installed Lisp source (.el) @@ -120,19 +117,7 @@ packages. Note that if there is a separate `dev' or `devel' package, for use at compilation time rather than run time, you will need that as well as the corresponding run time package; typically the dev package will contain header files and a library archive. Otherwise, -you can download and build libraries from sources. - -The sources of these libraries are available by anonymous CVS from -cvs.m17n.org. - - % cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/m17n login - % cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/m17n co m17n-db - % cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/m17n co m17n-lib - % cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/m17n co libotf - -For m17n-lib, if you have problems with making the whole package -because you lack some other packages on which m17n-lib depends, try to -configure it with the option "--without-gui". +you can download the libraries from . Note that Emacs cannot support complex scripts on a TTY, unless the terminal includes such a support. @@ -179,7 +164,7 @@ does not provide them): . libpng for PNG: http://www.libpng.org/ . libz (for PNG): http://www.zlib.net/ . libjpeg for JPEG: http://www.ijg.org/ - . libtiff for TIFF: http://www.libtiff.org/ + . libtiff for TIFF: http://www.remotesensing.org/libtiff/ . libgif for GIF: http://sourceforge.net/projects/giflib/ Emacs will configure itself to build with these libraries if the @@ -212,7 +197,7 @@ The names of the packages that you need varies according to the GNU/Linux distribution that you use, and the options that you want to configure Emacs with. On Debian-based systems, you can install all the packages needed to build the installed version of Emacs with a command -like `apt-get build-dep emacs23'. On Red Hat systems, the +like `apt-get build-dep emacs24'. On Red Hat systems, the corresponding command is `yum-builddep emacs'. @@ -280,6 +265,12 @@ You can tell configure where to search for GTK by specifying `--with-pkg-config-prog=PATH' where PATH is the pathname to pkg-config. Note that GTK version 2.6 or newer is required for Emacs. +Emacs will autolaunch a D-Bus session bus, when the environment +variable DISPLAY is set, but no session bus is running. This might be +inconvenient for Emacs when running as daemon or running via a remote +ssh connection. In order to completely prevent the use of D-Bus, configure +Emacs with the options `--without-dbus --without-gconf --without-gsettings'. + The Emacs mail reader RMAIL is configured to be able to read mail from a POP3 server by default. Versions of the POP protocol older than POP3 are not supported. For Kerberos-authenticated POP add @@ -313,6 +304,23 @@ systems which support that. Use --without-sound to disable sound support. +Use --without-all if you want to build a small executable with the minimal +dependencies on external libraries, at the cost of disabling most of the +features that are normally enabled by default. Using --without-all is +equivalent to --without-sound --without-dbus --without-libotf +--without-selinux --without-xft --without-gsettings --without-gnutls +--without-rsvg --without-xml2 --without-gconf --without-imagemagick +--without-m17n-flt --without-jpeg --without-tiff --without-gif +--without-png --without-gpm --without-file-notification. Note that +--without-all leaves X support enabled, and using the GTK2 or GTK3 +toolkit creates a lot of library dependencies. So if you want to +build a small executable with very basic X support, use --without-all +--with-x-toolkit=no. For the smallest possible executable without X, +use --without-all --without-x. If you want to build with just a few +features enabled, you can combine --without-all with --with-FEATURE. +For example, you can use --without-all --with-dbus to build with DBus +support and nothing more. + Use --with-wide-int to implement Emacs values with the type 'long long', even on hosts where a narrower type would do. With this option, on a typical 32-bit host, Emacs integers have 62 bits instead of 30. @@ -634,7 +642,7 @@ Here is a complete list of the variables you may want to set. path variables - `bindir' and `libexecdir'. The above variables serve analogous purposes in the makefiles for all -GNU software; the following variable is specific to Emacs. +GNU software; the following variables are specific to Emacs. `archlibdir' indicates where Emacs installs and expects the executable files and other architecture-dependent data it uses while @@ -642,6 +650,10 @@ GNU software; the following variable is specific to Emacs. see), is `/usr/local/libexec/emacs/VERSION/CONFIGURATION-NAME' (where VERSION and CONFIGURATION-NAME are as described above). +`GZIP_PROG' is the name of the executable that compresses installed info, + manual, and .el files. It defaults to gzip. Setting it to + the empty string suppresses compression. + Remember that you must specify any variable values you need each time you run `make' in the top directory. If you run `make' once to build emacs, test it, and then run `make' again to install the files, you @@ -667,25 +679,15 @@ running the `configure' program, you have to perform the following steps. 1) Copy `./src/config.in' to `./src/config.h'. -2) Consult `./etc/MACHINES' to see what configuration name you should -use for your system. Look at the code of the `configure' script to -see which operating system and architecture description files from -`src/s' and `src/m' should be used for that configuration name. Edit -`src/config.h', and change the two `#include' directives to include -the appropriate system and architecture description files. - -2) Edit `./src/config.h' to set the right options for your system. If -you need to override any of the definitions in the s/*.h and m/*.h -files for your system and machine, do so by editing config.h, not by -changing the s/*.h and m/*.h files. +2) Edit `./src/config.h' to set the right options for your system. 3) Create `Makefile' files in various directories from the corresponding `Makefile.in' files. This isn't so hard, just a matter of editing in appropriate substitutions for the @...@ constructs. -The `configure' script is built from `configure.ac' by the `autoconf' -program. You need at least the version of autoconf specified in the -AC_PREREQ(...) command to rebuild `configure' from `configure.ac'. +The `configure' script is built from `configure.ac' by the +`autogen.sh' script, which checks that `autoconf' and other build +tools are sufficiently up to date and then runs the build tools. BUILDING GNU EMACS BY HAND