X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/290d7ac277986bd118e594a8100b3f40e4492cb1..3bf234fa520ff90db31fae85f306befdadb24532:/INSTALL diff --git a/INSTALL b/INSTALL index 496c6c8c37..94fa6ba653 100644 --- a/INSTALL +++ b/INSTALL @@ -169,6 +169,7 @@ X11 is being used. X libjpeg for JPEG: http://www.ijg.org/ X libtiff for TIFF: http://www.remotesensing.org/libtiff/ X libgif for GIF: http://sourceforge.net/projects/giflib/ + librsvg2 for SVG: http://wiki.gnome.org/action/show/Projects/LibRsvg If you supply the appropriate --without-LIB option, 'configure' will omit the corresponding library from Emacs, even if that makes for a @@ -262,9 +263,9 @@ with the mouse. You can get fancy 3D-style scroll bars, even without Gtk or Motif, if you have the Xaw3d library installed (see "Image support libraries" above for Xaw3d availability). -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. +You can tell configure where to search for GTK by giving it the +argument PKG_CONFIG='/full/name/of/pkg-config'. 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 @@ -293,6 +294,7 @@ or more of these options: --without-tiff for TIFF image support --without-gif for GIF image support --without-png for PNG image support + --without-rsvg for SVG image support Use --without-toolkit-scroll-bars to disable Motif or Xaw3d scroll bars. @@ -304,22 +306,17 @@ 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 +Use --without-all for a smaller executable with fewer dependencies on +external libraries, at the cost of disabling many features. Although +--without-all disables libraries not needed for ordinary Emacs +operation, it does enable X support, 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. +For example, you can use --without-all --without-x --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 @@ -331,12 +328,17 @@ and is useful with GNU-compatible compilers. On a recent GNU system there should be no warnings; on older and on non-GNU systems the generated warnings may still be useful. -Use --enable-link-time-optimization to enable link-time optimizer, which -is available in GNU compiler since version 4.5.0. If your compiler is not -GNU or older than version 4.5.0, this option does nothing. If `configure' -can determine number of online CPUS on your system, final link-time -optimization and code generation is executed in parallel using one job -per each available online CPU. +Use --enable-link-time-optimization to enable link-time optimizer. If +you're using GNU compiler, this feature is supported since version 4.5.0. +If `configure' can determine number of online CPUS on your system, final +link-time optimization and code generation is executed in parallel using +one job per each available online CPU. + +This option is also supported for clang. You should have GNU binutils +with `gold' linker and plugin support, and clang with LLVMgold.so plugin. +Read http://llvm.org/docs/GoldPlugin.html for details. Also note that +this feature is still experimental, so prepare to build binutils and +clang from the corresponding source code repositories. The `--prefix=PREFIXDIR' option specifies where the installation process should put emacs and its data files. This defaults to `/usr/local'. @@ -403,10 +405,11 @@ compiler. By default, gcc is used if available. Here's an example of a `configure' invocation, assuming a Bourne-like shell such as Bash, which uses these variables: - CPPFLAGS='-I/foo/myinclude' LDFLAGS='-L/bar/mylib' \ - CFLAGS='-O3' LIBS='-lfoo -lbar' ./configure + ./configure \ + CPPFLAGS='-I/foo/myinclude' LDFLAGS='-L/bar/mylib' \ + CFLAGS='-O3' LIBS='-lfoo -lbar' -(this is all one long line). This tells `configure' to instruct the +(this is all one shell command). This tells `configure' to instruct the preprocessor to look in the `/foo/myinclude' directory for header files (in addition to the standard directories), instruct the linker to look in `/bar/mylib' for libraries, pass the -O3 optimization @@ -416,12 +419,11 @@ libraries in addition to the standard ones. For some libraries, like Gtk+, fontconfig and ALSA, `configure' uses pkg-config to find where those libraries are installed. If you want pkg-config to look in special directories, you have to set -the environment variable PKG_CONFIG_PATH to point to the directories -where the .pc-files for those libraries are. -For example: +PKG_CONFIG_PATH to point to the directories where the .pc-files for +those libraries are. For example: - PKG_CONFIG_PATH='/usr/local/alsa/lib/pkgconfig:/opt/gtk+-2.8/lib/pkgconfig' \ - ./configure + ./configure \ + PKG_CONFIG_PATH='/usr/local/alsa/lib/pkgconfig:/opt/gtk+-2.8/lib/pkgconfig' The work of `configure' can be done by editing various files in the distribution, but using `configure' is easier. See the section called