(file) Return to INSTALL.TXT CVS log (file) (dir) Up to [XFree86 CVS] / xc / Attic

Diff for /xc/Attic/INSTALL.TXT between version 1.1.1.4 and 1.1.1.5

version 1.1.1.4, 1996/12/24 09:20:30 version 1.1.1.5, 1998/09/27 07:48:12
Line 7 
Line 7 
  
  
  
               Building and Installing the X Window System                      BBuuiillddiinngg aanndd IInnssttaalllliinngg XX1111RR66..44
  
  
  
Line 16 
Line 16 
  
  
  
                              Stephen Gildea                             _K_a_l_e_b _S_. _K_E_I_T_H_L_E_Y
  
                               X Consortium                       The Open Group X Project Team
  
  
  
  
  
  
                              March 5, 1996                              30 January, 1998
  
                         Updated For Release 6.3  
  
  
  
Line 37 
Line 36 
  
  
  
   Copyright (C) 1998 The Open Group
 Copyright c 1995, 1996 X Consortium  
  
 Permission is hereby granted, free of charge, to any person obtaining a Permission is hereby granted, free of charge, to any person obtaining a
 copy of this software and associated documentation files (the  copy of this software and associated documentation files (the Software),
 "Software"), to deal in the Software without restriction, including  to use the Software without restriction, including, without limitation,
 without limitation the rights to use, copy, modify, merge, publish, dis-  the rights to copy, modify, merge, publish, distribute and sublicense
 tribute, sublicense, and/or sell copies of the Software, and to permit  the Software, to make, have made, license and distribute derivative
 persons to whom the Software is furnished to do so, subject to the fol-  works thereof, and to permit persons to whom the Software is furnished
 lowing conditions:  to do so, subject to the following conditions:
   
 The above copyright notice and this permission notice shall be included  The above copyright notice and the following permission notice shall be
 in all copies or substantial portions of the Software.  included in all copies of the Software:
   
 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL-  IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE WARRANTIES OF MERCHANTABIL-
 ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT  ITY, FITNESS FOR A PARTICULAR PURPOSE AND NON- INFRINGEMENT. IN NO EVENT
 SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABIL-  SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER USEABILI-
 ITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,  TIY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS  OUT OF, OR IN CONNNECTION WITH THE SOFTWARE OR THE USE OF OTHER DEALINGS
 IN THE SOFTWARE. IN THE SOFTWARE.
  
 Except as contained in this notice, the name of the X Consortium shall  Except as contained in this notice, the name of The Open Group shall not
 not be used in advertising or otherwise to promote the sale, use or  be used in advertising or otherwise to promote the use or other dealings
 other dealings in this Software without prior written authorization from  in this Software without prior written authorization from The Open
 the X Consortium.  Group.
  
 X Window System is a trademark of X Consortium, Inc.  X Window System is a trademark of The Open Group.
  
  
 1.  Easy Build Instructions  _1_.  _E_a_s_y _B_u_i_l_d _I_n_s_t_r_u_c_t_i_o_n_s
  
 This quick summary is no substitute for reading the full build instruc- This quick summary is no substitute for reading the full build instruc-
 tions later in this document. tions later in this document.
  
 Edit xc/config/cf/site.def for local preferences.  If you want to build  Edit xxcc//ccoonnffiigg//ccff//ssiittee..ddeeff for local preferences.  If you want to
 with gcc uncomment the HasGcc2 line.  If you want to install somewhere  install somewhere other than //uussrr//XX1111RR66..44, change PPrroojjeeccttRRoooott. (Do _n_o_t
 other than /usr/X11R6.3, change ProjectRoot.  (Do not use DESTDIR.)  use DDEESSTTDDIIRR.)  If you want to build with _g_c_c uncomment the HHaassGGcccc22 line.
   If you have _g_c_c, but not _c_c, please read the full build instructions.
 If any fixes have been released by the X Consortium, stop here and fol-  
 low the instructions at the top of each patch, but don't do any of the  If some time has elapsed since the initial release of R6.4, check to see
 make commands suggested in the patches.  Then continue here.  if any public patches have been released. The source tar files may have
   been updated -- check the patch-level line in the bug-report template.
 Check the appropriate vendor-specific .cf file in xc/config/cf/ to make  If the source in the tar files has not been updated then get all the
 sure that OSMajorVersion and OSMinorVersion are set correctly for your  patches and apply them, following the instructions at the top of each
 system.  Override them in site.def if necessary.  patch. Ignore the rebuild steps in the patch application instructions.
   
 See if there is a BootstrapCFlags mentioned in the comments in the  Check the appropriate vendor-specific ..ccff file in xxcc//ccoonnffiigg//ccff// to make
 vendor-specific .cf file.  If there isn't one, cd to the xc directory  sure that _O_S_M_a_j_o_r_V_e_r_s_i_o_n, _O_S_M_i_n_o_r_V_e_r_s_i_o_n, and _O_S_T_e_e_n_y_V_e_r_s_i_o_n are set
 and type:  correctly for your system. On most systems imake will figure these out
   automatically; but you may override them in your xxcc//ccoonnffiigg//ccff//ssiittee..ddeeff
   if you want.
   
   See if there is a _B_o_o_t_s_t_r_a_p_C_F_l_a_g_s mentioned in the comments in the ven-
   dor-specific ..ccff file. (Most systems don't have or need one. The Boot-
   strapCFlags in _s_u_n_._c_f is for SunOS 4.0.x, so if you're building on SunOS
   4.1.x or SunOS 5/Solaris 2 then BootstrapCFlags doesn't apply.) If there
   isn't one, _c_d to the xxcc directory and type (in csh):
  
         % make World >& world.log         % make World >& world.log
  
  
 If there is a BootstrapCFlags, take its value and type:  If there is an applicable BBoooottssttrraappCCFFllaaggss, take its value and type:
  
         % make World BOOTSTRAPCFLAGS="value" >& world.log          % make World BOOTSTRAPCFLAGS="_v_a_l_u_e" >& world.log
  
  
 Do not call the output file "make.log" when doing "make World".  After a Do not call the output file "make.log" when doing "make World".  After a
Line 107 
Line 113 
         % make install.man >& man.log         % make install.man >& man.log
  
  
 While the system is building (or if things fail), read the rest of these  WWhhiillee tthhee ssyysstteemm iiss bbuuiillddiinngg ((oorr iiff tthhiinnggss ffaaiill)),, rreeaadd tthhee rreesstt ooff tthheessee
 installation instructions.  iinnssttaallllaattiioonn iinnssttrruuccttiioonnss..
   
   
   
 2.  Building X  
   
   
 This document gives detailed instructions for building Release 6:  get-  
 ting it off the distribution medium, configuring, compiling, installing,  
 running, and updating.  
   
 Release Notes are in xc/RELNOTES.* (various formats) in the distribu-  
 tion.  
   
 More recent information about newly-discovered problems may be found in  
 the Frequently Asked Questions posting appearing monthly on the  
 comp.windows.x newsgroup and xpert mailing list.  It is also available  
 via anonymous FTP on ftp.x.org in the file contrib/faqs/FAQ.Z, or on  
 your local X mirror site.  
   
   
 2.1.  Preparing the Site  
   
   
 If you are unpacking tar files, you will need about 130 Mb to hold the  
 xc/ part.  To install requires 30-50 Mb assuming you have shared  
 libraries (80-100 Mb without).  You will need an equivalent amount of  
 extra space to build, since you also need room for all the object files.  
   
 Distributed as tar files, Release 6.3 core is divided into parts as fol-  
 lows:  
   
   
         xc-1.tar       contains everything in xc/ that isn't in the other tar files  
         xc-2.tar       contains xc/fonts, xc/doc/specs, xc/util  
         xc-3.tar       contains xc/doc/hardcopy  
   
   
 If you define BuildFonts to NO, you only need to unpack xc-1.tar to  
 build.  If you build fonts, then you will also need xc-2.tar to build.  
   
   
 2.2.  Unpacking the Distribution  
   
   
 The distribution normally comes as multiple tar files, either on tape or  
 across a network, or as a CD-ROM.  
  
  
 2.2.1.  Unpacking a Compressed FTP Distribution  
  
   _2_.  _B_u_i_l_d_i_n_g _a_n_d _I_n_s_t_a_l_l_i_n_g _R_6_._4
  
 If you have obtained compressed tar files over the network, create a  
 directory to hold the sources and cd into it:  
  
         mkdir sourcedir  Historically the MIT X Consortium and The X Consortium, Inc., sample
         cd sourcedir  implementation releases have always been source-code-only releases, and
   this release is no different.
  
 Then for each tar file xc-*.tar.Z, execute this:  
  
         zcat ftp-dir/xc-N.tar.Z | tar xf -  _2_._1_.  _I_n_t_r_o_d_u_c_t_i_o_n
  
  
   Every release of X has been progressively easier to configure, build,
   and install than the preceding releases -- and we believe this release
   is the easiest release to build yet. That not withstanding, if things do
   go amiss during the build we assume that you have the basic skills nec-
   essary, and the willingness, to debug any errors that may occur in the
   build process. When you install, if you're going to use _x_d_m or replace
   your system's old X, we assume you have a basic understanding of your
   system's initialization process. For Remote Execution (RX, embedding) we
   assume you that you understand the fundamentals of HTTP, CGI, and HTML.
   If these assumptions are not correct then you should consider finding
   someone who has proficiency in these areas to do the build and install
   for you.
  
 2.2.2.  Unpacking a gzipped FTP Distribution  After the release has been out for a while more up to date information
   about any newly-discovered problems may be found in the _F_r_e_q_u_e_n_t_l_y _A_s_k_e_d
   _Q_u_e_s_t_i_o_n_s posting appearing monthly on the Usenet newsgroup comp.win-
   dows.x and xpert mailing list. The FAQ is also available via anonymous
   FTP from ftp://ftp.x.org/ in the file ftp://ftp.x.org/con-
   trib/faqs/FAQ.Z, or possibly on one of X mirror sites.
  
  
 If you have obtained gzipped tar files over the network, create a direc-  _2_._2_.  _P_r_e_p_a_r_i_n_g _Y_o_u_r _B_u_i_l_d _S_y_s_t_e_m
 tory to hold the sources and cd into it:  
  
         mkdir sourcedir  
         cd sourcedir  
  
 Then for each tar file xc-*.tar.gz, execute this:  The source is distributed in four gzip compressed UNIX TTape AARRchive
   (tar) files. You will need about 200 Mb of disk space in order to unpack
   and build the release. Installing requires an additional 30-50 Mb assum-
   ing you have shared libraries (80-100 Mb without).
  
         gunzip -c ftp-dir/xc-N.tar.gz | tar xf -  On non-UNIX systems you'll need a utility that can extract gzip com-
   pressed tar files to extract the sources. There are several to chose
   from, we do not make recommendations about which one you should use.
  
   Release 6.4 sources are distributed among the tar files as follows:
  
  
 2.2.3.  Unpacking a Split Compressed FTP Distribution          tog-1.tar      contains everything in xc/ that isn't in the other tar files
           tog-2.tar      contains xc/fonts
           tog-3.tar      contains xc/doc/specs, xc/util
           tog-4.tar      contains xc/doc/hardcopy
  
  
 If you have obtained compressed and split tar files over the network,  If you define _B_u_i_l_d_F_o_n_t_s to NO in your ssiittee..ddeeff file, then you only need
 create a directory to hold the sources:  to unpack tog-1.tar to build. If you build fonts, then you will also
   need tog-2.tar to build. If you already have the fonts from prior
   releases you can use those instead of downloading them again. We presume
   that you know how to copy or move them from your old source tree to the
   R6.4 source tree.
  
         mkdir sourcedir  
  
 Then for each directory xc-*:  _2_._3_.  _U_n_p_a_c_k_i_n_g _t_h_e _D_i_s_t_r_i_b_u_t_i_o_n
  
         cd ftp-dir/xc-N  
         cat xc-N.?? | uncompress | (cd sourcedir; tar xf -)  
  
   Create a directory to hold the sources and _c_d into it:
  
           % mkdir _s_o_u_r_c_e_d_i_r
           % cd _s_o_u_r_c_e_d_i_r
  
 2.2.4.  Unpacking the Tape Distribution  Then for each tar file ttoogg--**..ttaarr..ggzz, execute this:
  
           % gunzip -c _f_t_p_-_d_i_r/tog-_N.tar.gz | tar xf -
  
 If you have obtained a tape, create a directory to hold the sources and  
 untar everything into that directory:  
  
         mkdir sourcedir  or if you have GNU's tar (FreeBSD, NetBSD, OpenBSD, or Linux too)
         cd sourcedir  
         tar xf tape-device  
  
           % tar xzf _f_t_p_-_d_i_r/tog-_N.tar.gz
  
  
 2.2.5.  Using the CD-ROM  
  
   _2_._4_.  _A_p_p_l_y_i_n_g _P_a_t_c_h_e_s
  
 If you have obtained a CD-ROM, you don't have to do anything to unpack  
 it.  However, you will have to create a symbolic link tree to build X.  
 See the next section.  
  
 To mount the CD-ROM, see the mount(8) manual page on your system or the  If some time has elapsed since the initial release of R6.4, check to see
 liner notes that came with the CD-ROM.  Some systems, e.g., Solaris 2,  if any public patches have been released. The source tar files may have
 can automatically mount the CD-ROM for you.  been updated -- check the patch-level line in the bug-report template.
   If the source in the tar files has not been updated then get all the
   patches and apply them, following the instructions at the top of each
   patch. Ignore the rebuild steps in the patch application instructions.
  
   See the section "Public Patches" later in this document.
  
 2.3.  Apply Patches  Then continue here.
  
  
 If there are fixes released that are more recent than your distribution,  _2_._5_.  _C_o_n_f_i_g_u_r_a_t_i_o_n _P_a_r_a_m_e_t_e_r_s _(_I_m_a_k_e _V_a_r_i_a_b_l_e_s_)
 apply them now.  Follow the instructions at the top of each patch, but  
 don't do any make commands.  See the section "Public Patches" later in  
 this document.  Then continue here.  
  
  
 2.4.  Symbolic Link Trees  This release, like all the releases before it, uses _i_m_a_k_e, a utility for
   creating system-specific Makefiles from system-independent Imakefiles.
   Almost every directory in the release contains an IImmaakkeeffiillee. System-spe-
 If you expect to build the distribution on more than one machine using a  cific configuration information is located in xxcc//ccoonnffiigg//ccff//, which is
 shared source tree, or you are building from CD-ROM, or you just want to  used by the _i_m_a_k_e program every time a MMaakkeeffiillee is generated in the
 keep the source tree pure, you may want to use the program  source tree.
 xc/config/util/lndir.c to create a symbolic link tree on each build  
 machine.  The links may use an additional 10 megabytes, but it is  
 cheaper than having multiple copies of the source tree.  
   
 It may be tricky to compile lndir before the distribution is built.  If  
 you have a copy from a previous release, use that.  Makefile.ini can be  
 used for building lndir the first time.  You may have to specify  
 OSFLAGS=-Dsomething to get it to compile.  What you would pass as  
 BOOTSTRAPCFLAGS might work.  The command line looks something like this:  
   
         make -f Makefile.ini OSFLAGS=-Dflag  
   
   
 To use a symbolic link tree, create a directory for the build, cd to it,  
 and type this:  
   
         lndir sourcedir  
   
   
 where sourcedir is the pathname of the directory where you stored the  
 sources.  All of the build instructions given below should then be done  
 in the build directory on each machine, rather than in the source direc-  
 tory.  
   
 xc/config/util/mkshadow/ contains mkshadow, an alternative program to  
 lndir.  
   
   
 2.5.  Configuration Parameters  
   
   
 Build information for each source directory is in files called  
 Imakefile.  An Imakefile, along with local configuration information in  
 xc/config/cf/, is used by the program imake to generate a Makefile.  
  
 Most of the configuration work prior to building the release is to set Most of the configuration work prior to building the release is to set
 parameters so that imake will generate correct files.  Most of those  parameters (imake variables) so that _i_m_a_k_e will generate correct Make-
 parameters are set in xc/config/cf/site.def.  You will also need to  files. If you're building on one of the supported systems almost no con-
 check the appropriate vendor-specific .cf file in xc/config/cf/ to make  figuration work should be necessary.
 sure that OSMajorVersion, OSMinorVersion, and OsTeenyVersion are set  
 correctly for your system.  Override them in site.def if necessary.  You should define your configuration parameters in xxcc//ccoonn--
   ffiigg//ccff//ssiittee..ddeeff. We provide an empty ssiittee..ddeeff file and a ssiittee..ssaammppllee
   file. The ssiittee..ssaammppllee file is a suggested ssiittee..ddeeff file -- use it at
   your own risk.
   
   Any public patches we release will never patch ssiittee..ddeeff, so you can be
   assured that applying a public-patch will not corrupt your site.def
   file. On rare occasion you may need to make the change in your vendor-
   specific ..ccff file; but you should avoid doing that if at all possible
   because any patch we might release could conceivably patch your vendor-
   specific ..ccff file and your change may be lost or garbled. You can over-
   ride most of the things in your vendor-specific ..ccff file in your
   ssiittee..ddeeff file.  (If you can't, it's a bug -- please file a bug-report.)
   
   On the systems we use here, imake will automatically determine the _O_S_M_a_-
   _j_o_r_V_e_r_s_i_o_n, _O_S_M_i_n_o_r_V_e_r_s_i_o_n, and _O_S_T_e_e_n_y_V_e_r_s_i_o_n for your system. If your
   system isn't one of the systems we build on here, or you want to build
   for a different version of your operating system, then you can override
   them in the appropriate entry in your ssiittee..ddeeff file.
  
 The site.def file has two parts, one protected with "#ifdef BeforeVen-  The ssiittee..ddeeff file has two parts, one protected with "#ifdef BeforeVen-
 dorCF" and one with "#ifdef AfterVendorCF".  The file is actually pro- dorCF" and one with "#ifdef AfterVendorCF".  The file is actually pro-
 cessed twice, once before the .cf file and once after.  About the only  cessed twice, once before the ..ccff file and once after. About the only
 thing you need to set in the "before" section is HasGcc2; just about  thing you need to set in the "before" section is HHaassGGcccc22; just about
 everything else can be set in the "after" section. everything else can be set in the "after" section.
  
 The sample site.def also has commented out support to include another  The ssiittee..ssaammppllee also has commented out support to include another file,
 file, host.def.  This scheme may be useful if you want to set most  hhoosstt..ddeeff. This scheme may be useful if you want to set most parameters
 parameters site-wide, but some parameters vary from machine to machine.  site-wide, but some parameters vary from machine to machine.  If you use
 If you use a symbolic link tree, you can share site.def across all  a symbolic link tree, you can share ssiittee..ddeeff across all machines, and
 machines, and give each machine its own copy of host.def.  give each machine its own copy of hhoosstt..ddeeff.
   
   The config parameters are listed in xxcc//ccoonnffiigg//ccff//RREEAADDMMEE, but here are
   some of the new or more common parameters that you may wish to set in
   your xxcc//ccoonnffiigg//ccff//ssiittee..ddeeff.
  
 The config parameters are listed in xc/config/cf/README, but here are  PPrroojjeeccttRRoooott
 some of the more common parameters that you may wish to set in site.def.  
   
 ProjectRoot  
      The destination where X will be installed.  This variable needs to      The destination where X will be installed.  This variable needs to
      be set before you build, as some programs that read files at run-      be set before you build, as some programs that read files at run-
      time have the installation directory compiled in to them.  Assuming       time have the installation directory compiled in to them.
      you have set the variable to some value /path, files will be  
      installed into /path/bin, /path/include/X11, /path/lib, and  
      /path/man.  
   
 HasGccSet to YES to build with gcc version 1.  
   
 HasGcc2  
      Set to YES to build with gcc version 2.  Both this option and  
      HasGcc look for a compiler named gcc, but HasGcc2 will cause the  
      build to use more features of gcc 2, such as the ability to compile  
      shared libraries.  
   
 BuildXInputExt  
      Set to YES to build the X Input Extension.  This extension requires  
      device-dependent support in the X server, which exists only in Xhp  
      in our implementation.  
  
 BuildPexExt  HHaassVVaarrDDiirreeccttoorryy
      Set to NO to not build the PEX server extension and fonts.       Set to NNOO if your system doesn't have /var or you don't want cer-
        tain files to be installed in _V_a_r_D_i_r_e_c_t_o_r_y.
   
   VVaarrDDiirreeccttoorryy
        The location of site editable configuration and run-time files.
        Many sites prefer to install their X binaries on _r_e_a_d_-_o_n_l_y media --
        either a disk slice (partition) that's mounted _r_e_a_d_-_o_n_l_y for added
        security, an NFS volume mounted _r_e_a_d_-_o_n_l_y for security and/or
        improved VM paging characteristics, or from a _l_i_v_e _f_i_l_e_s_y_s_t_e_m on a
        CD-ROM. In order to simplify things like installing _a_p_p_-_d_e_f_a_u_l_t
        files for locally built software, and allowing editing of miscella-
        neous configuration and policy files, and to allow xdm to create
        its master Xauthority file, some directories under _$_P_r_o_j_e_c_t_-
        _R_o_o_t//lliibb//XX1111 are actually installed in //vvaarr//XX1111, and _$_P_r_o_j_e_c_t_-
        _R_o_o_t//lliibb//XX1111 contains symlinks to the directories in //vvaarr//XX1111.
   
   HHaassGGcccc22
        Set to YYEESS to build with _g_c_c version 2.x instead of your system's
        default compiler.
   
   BBuuiillddXXIInnppuuttEExxtt
        Set to YYEESS to build the X Input Extension. This extension requires
        device-dependent support in the X server, which exists only in _X_h_p
        and _X_F_8_6___* in the sample implementation.
  
 DefaultUsrBin  DDeeffaauullttUUssrrBBiinn
      This is a directory where programs will be found even if PATH is      This is a directory where programs will be found even if PATH is
      not set in the environment.  It is independent of ProjectRoot and      not set in the environment.  It is independent of ProjectRoot and
      defaults to /usr/bin.  It is used, for example, when connecting       defaults to //uussrr//bbiinn. It is used, for example, when connecting from
      from a remote system via rsh.  The rstart program installs its       a remote system via _r_s_h. The _r_s_t_a_r_t program installs its server in
      server in this directory.       this directory.
   
 InstallServerSetUID  IInnssttaallllSSeerrvveerrSSeettUUIIDD
      Some systems require the X server to run as root to access the dev-       Some systems require the X server to run as root to access the
      ices it needs.  If you are on such a system and will not be using       devices it needs. If you are on such a system and will not be using
      xdm, you can set this variable to YES to install the X server       _x_d_m, you may set this variable to YYEESS to install the X server
      setuid to root.  Note that the X server has not been analyzed by       setuid to root; however the X Project Team strongly recommends that
      the X Consortium for security in such an installation; talk to your       you not install your server suid-root, but that you use xdm
      system manager before setting this variable.       instead. Talk to your system manager before setting this variable
        to YYEESS.
  
 InstallXdmConfig  IInnssttaallllXXddmmCCoonnffiigg
      By default set to NO, which suppresses installing xdm config files      By default set to NO, which suppresses installing xdm config files
      over existing ones.  Leave it set to NO if your site has customized      over existing ones.  Leave it set to NO if your site has customized
      the files in /usr/X11R6.3/lib/X11/xdm, as many sites do.  If you       the files in _$_P_r_o_j_e_c_t_R_o_o_t//lliibb//XX1111//xxddmm, as many sites do.  If you
      don't install the new files, merge any changes present in the new      don't install the new files, merge any changes present in the new
      files.      files.
  
 MotifBC  MMoottiiffBBCC
      Causes Xlib and Xt to work around some bugs in older versions of      Causes Xlib and Xt to work around some bugs in older versions of
      Motif.  Set to YES only if you will be linking with Motif version       Motif.  Set to YYEESS only if you will be linking with Motif version
      1.1.1, 1.1.2, or 1.1.3.      1.1.1, 1.1.2, or 1.1.3.
  
 GetValuesBC  GGeettVVaalluueessBBCC
      Setting this variable to YES allows illegal XtGetValues requests       Setting this variable to YYEESS allows illegal XtGetValues requests
      with NULL ArgVal to usually succeed, as R5 did.  Some applications      with NULL ArgVal to usually succeed, as R5 did.  Some applications
      erroneously rely on this behavior.  Support for this will be       erroneously rely on this behavior. Support for this will be removed
      removed in a future release.       in a future release.
  
 The following vendor-specific .cf files are in the release but have not  The following vendor-specific ..ccff files are in the release but have not
 been tested recently and hence probably need changes to work:  been tested recently and hence probably need changes to work: aappoolllloo..ccff,
 apollo.cf, bsd.cf, convex.cf, DGUX.cf, luna.cf, macII.cf, Mips.cf,  bbssdd..ccff, ccoonnvveexx..ccff, DDGGUUXX..ccff, lluunnaa..ccff, mmaaccIIII..ccff, MMiippss..ccff, mmoottoo..ccff, OOkkii..ccff,
 moto.cf, Oki.cf, pegasus.cf, x386.cf.  Amoeba.cf is known to require  ppeeggaassuuss..ccff, xx338866..ccff.  AAmmooeebbaa..ccff is known to require additional patches.
 additional patches.  
  
 The file xc/lib/Xdmcp/Wraphelp.c, for XDM-AUTHORIZATION-1, is not  The file xxcc//lliibb//XXddmmccpp//WWrraapphheellpp..cc, for XDM-AUTHORIZATION-1, is not
 included in this release.  included in this release. See ftp://ftp.x.org/pub/R6.4/xdm-auth/README.
  
  
 2.6.  System Build Notes  _2_._6_.  _S_y_s_t_e_m _B_u_i_l_d _N_o_t_e_s
  
  
 This section contains hints on building X with specific compilers and This section contains hints on building X with specific compilers and
 operating systems. operating systems.
  
 If the build isn't finding things right, make sure you are using a com- If the build isn't finding things right, make sure you are using a com-
 piler for your operating system.  For example, a pre-compiled gcc for a  piler for your operating system. For example, a pre-compiled _g_c_c for a
 different OS will not have right symbols defined, so imake will not work  different OS (e.g. as a cross-compiler) will not have right symbols
 correctly.  defined, so _i_m_a_k_e will not work correctly.
   
   
 2.6.1.  gcc  
   
 gcc version 2 is in regular use at the X Consortium on Sparc platforms.  
 Set the variable HasGcc2.  X will not compile on some systems with gcc  
 version 2.5, 2.5.1, or 2.5.2 because of an incorrect declaration of mem-  
 move() in a gcc include file.  
   
 If you are using a gcc version older than 2.7 on Solaris x86, you need  
 to specify BOOTSTRAPCFLAGS="-Dsun" in the "make World" command.  
   
   
 2.6.2.  Other GNU tools  
  
 Use of the GNU assembler, as, or linker, ld, is not supported.  GNU make  
 is not supported.  
  
   _2_._6_._1_.  _g_c_c
  
 2.6.3.  SparcWorks 2.0  X will not compile on some systems with _g_c_c version 2.5, 2.5.1, or 2.5.2
   because of an incorrect declaration of memmove() in a gcc fixed include
   file.
  
   If you are using a _g_c_c version prior to 2.7 on Solaris x86, you need to
   specify BBOOOOTTSSTTRRAAPPCCFFLLAAGGSS==""--DDssuunn"" in the "make World" command.
  
 If you have a non-threaded program and want to debug it with the old  If you're building on a system that has an unbundled compiler, e.g.  So-
 SparcWorks 2.0 dbx, you will need to use the thread stubs library in  laris 2.x, and you do not have the _c_c compiler, you need to contrive to
 xc/util/misc/thr_stubs.c.  Compile it as follows:  have _c_c in your path in order to bootstrap imake.  One way to do this is
   to create a symlink cc that points to _g_c_c.
  
         cc -c thr_stubs.c          % cd /usr/local/bin; ln -s _p_a_t_h_-_t_o_-_g_c_c cc
         ar cq libthr_stubs.a thr_stubs.o  
         ranlib libthr_stubs.a  
  
 Install libthr_stubs.a in the same directory with your X libraries  Once _i_m_a_k_e has been built all the Makefiles created with it will explic-
 (e.g., /usr/X11R6.3/lib/libthr_stubs.a).  Add the following line to  itly use _g_c_c and you can remove the symlink. Another way around this is
 site.def:  to edit xxcc//ccoonnffiigg//iimmaakkee//MMaakkeeffiillee..iinnii to specify _g_c_c instead of _c_c.
  
         #define ExtraLibraries -lsocket -lnsl $(CDEBUGFLAGS:-g=-lthr_stubs)  
  
 This example uses a make macro substitution; not all make implementa-  _2_._6_._2_.  _O_t_h_e_r _G_N_U _t_o_o_l_s
 tions support this feature.  
  
   Use of the GNU BinUtils assembler, _a_s, and linker, _l_d, is not supported
   -- period! If you have them installed on your system you must rename or
   remove them for the duration of the R6.4 build.  (You can restore them
   afterwards.)
  
 2.6.4.  CenterLine C under Solaris 2  The system-supplied _m_a_k_e works just fine for building R6.4 and that's
   what we suggest you use. If you've replaced your system's _m_a_k_e with GNU
   _m_a_k_e then we recommend that you restore the system _m_a_k_e for the duration
   of your R6.4 build. After R6.4 is done building you can revert to GNU
   make. GNU make on most systems (except Linux, where it is the default
   make) is not a supported build configuration. GNU make may work for you,
   and if it does, great; but if it doesn't we do not consider it a bug in
   R6.4. If, after this admonition, you still use GNU make and your build
   fails, reread the above, and retry the build with the system's _m_a_k_e be-
   fore you file a bug-report.
  
  
 If you are using the CenterLine C compiler to compile the distribution  _2_._6_._3_.  _I_B_M _A_I_X _4_._x
 under Solaris 2, place the following line in your site.def:  
  
         #define HasCenterLineC YES  
  
 If clcc is not in your default search path, add this line to site.def:  On AIX 4.x, the file lliibb//ffoonntt//TTyyppee11//oobbjjeeccttss..cc must be compiled without
   optimization (--OO) or the X server and fontserver will exit when Type 1
   fonts are used.
  
         #define CcCmd /path/to/your/clcc  
  
   _2_._6_._4_.  _S_u_n_O_S _4_._0_._x
  
 If you are using CodeCenter 4.0.4 or earlier, the following files  
 trigger bugs in the clcc optimizer:  
  
         xc/programs/Xserver/cfb16/cfbgetsp.c  SunOS 4.0 and earlier need BOOTSTRAPCFLAGS=-DNOSTDHDRS because it does
         xc/programs/Xserver/cfb16/cfbfillsp.c  not have unistd.h and stdlib.h. Do _n_o_t supply a BOOTSTRAPCFLAGS when
         xc/programs/Xserver/cfb/cfbgetsp.c  building any SunOS 4.1 or 5.x (Solaris 2) version.
  
  
 Thus to build the server, you will have to compile these files by hand  _2_._6_._5_.  _L_i_n_u_x
 with the -g flag:  
  
         % cd xc/programs/Xserver/cfb16  
         % make CDEBUGFLAGS="-g" cfbgetsp.o cfbfillsp.o  
         % cd ../cfb  
         % make CDEBUGFLAGS="-g" cfbgetsp.o  
  
 This optimizer bug appears to be fixed in CodeCenter 4.0.6.  On Linux systems imake has preliminary support to automatically deter-
   mine which Linux distribution you're using. At this time it only auto-
   matically detects S.u.S.E. Linux. On other Linux systems you should set
   the LinuxDistribution parameter in your xxcc//ccoonnffiigg//ccff//ssiittee..ddeeff -- see the
   xxcc//ccoonnffiigg//ccff//lliinnuuxx..ccff file for the list of valid values. On Linux sys-
   tems imake will also automatically determine which version of libc and
   binutils your system has. You may override these in your xxcc//ccoonn--
   ffiigg//ccff//ssiittee..ddeeff file.
  
   Many distributions of Linux have poor or no support for ANSI/POSIX/ISO C
   locale support. If your Linux distribution is one of these you should
   make certain that the imake variable _L_i_n_u_x_L_o_c_a_l_e_D_e_f_i_n_e_s is set to
   --DDXX__LLOOCCAALLEE so that compose processing and other internationalization
   features will work correctly. To help decide if you should use -DX_LO-
   CALE, look in /usr/share/locale -- if it's empty, you should probably
   use the -DX_LOCALE define.
  
 2.6.5.  IBM AIX 4.1.4  
  
   _2_._6_._6_.  _M_i_c_r_o_s_o_f_t _W_i_n_d_o_w_s _N_T
 On AIX 4.1.4, the file lib/font/Type1/objects.c must be compiled without  
 optimization (-O) else the X server will exit when Type 1 fonts are  
 used.  
   
   
 2.6.6.  SunOS 4  
   
   
 SunOS 4.0 and earlier need BOOTSTRAPCFLAGS=-DNOSTDHDRS because they do  
 not have unistd.h nor stdlib.h.  Do not supply a BOOTSTRAPCFLAGS when  
 building any SunOS 4.1 version.  
   
   
 2.6.7.  Microsoft Windows NT  
  
  
 All of the base libraries are supported, including multi-threading in All of the base libraries are supported, including multi-threading in
 Xlib and Xt, but some of the more complicated applications, specifically Xlib and Xt, but some of the more complicated applications, specifically
 xterm and xdm, are not supported.  _x_t_e_r_m and _x_d_m, are not supported.
  
 There are also some other rough edges in the implementation, such as There are also some other rough edges in the implementation, such as
 lack of support for non-socket file descriptors as Xt alternate inputs lack of support for non-socket file descriptors as Xt alternate inputs
 and not using the registry for configurable parameters like the system and not using the registry for configurable parameters like the system
 filenames and search paths. filenames and search paths.
  
 The Xnest server has been made to run on NT.  It requires a real X  The _X_n_e_s_t server has been made to run on NT; although it still requires
 server for output still.  a real X server for output still. A real X server can not be built from
   these sources -- in order to display X applications on a MS-Windows host
   you will have to acquire a real X Server.
  
   You have several choices for imake's _R_m_T_r_e_e_C_m_d. Look at the possible
   definitions in the xxcc//ccoonnffiigg//ccff//WWiinn3322..ccff file, choose one that's right
   for you, and add it to your xxcc//ccoonnffiigg//ccff//ssiittee..ddeeff file.
  
 2.6.8.  Omron Luna  
  
   _2_._7_.  _T_h_e _B_u_i_l_d
  
 The Omron Luna platform is no longer supported.  The Luna version of the  
 make program doesn't define the standard macro MAKE, so you must run it  
 as "make MAKE=make" at top level, e.g., "make MAKE=make World".  
  
   For all the supported UNIX and UNIX-like systems you can simply type (in
   csh):
  
 2.7.  The Build          % make World >& world.log
  
   You can call the output file something other than "world.log"; but don't
   call it "make.log" because files with this name are automatically delet-
   ed during the initial "cleaning" stage of the build.
   
   The build can take several hours on older systems, and may take as lit-
   tle as an hour on the faster systems that are available today. On UNIX
   and UNIX-like systems you may want to run it in the background and keep
   a watch on the output. For example:
  
 On NT, type          % make World >& world.log &
           % tail -f world.log
  
         nmake World.Win32 > world.log  
  
 On other systems, find the BootstrapCFlags line, if any, in the vendor-  If something goes wrong, the easiest thing is to correct the problem and
 specific .cf file.  If there isn't one, type  start over again, i.e. typing "make World".
  
         % make World >& world.log  
  
 otherwise type  _2_._7_._1_.  _U_N_I_X _a_n_d _U_N_I_X_-_l_i_k_e _s_y_s_t_e_m_s
  
         % make World BOOTSTRAPCFLAGS="value" >& world.log  
  
   Check your vendor-specific ..ccff file; if it doesn't have BootstrapCFlags
   that apply to your version of the operating system then type (in csh):
  
 You can call the output file something other than "world.log", but do          % make World >& world.log
 not call it "make.log" because files with this name are automatically  
 deleted during the "cleaning" stage of the build.  
   
 Because the build can take several hours to complete, you will probably  
 want to run it in the background and keep a watch on the output.  For  
 example:  
  
         % make World >& world.log &  
         % tail -f world.log  
  
   Otherwise type (in csh):
   
           % make World BOOTSTRAPCFLAGS="value" >& world.log
  
 If something goes wrong, the easiest thing is to just start over (typing  
 "make World" again) once you have corrected the problem.  
  
   None of the _s_u_p_p_o_r_t_e_d operating systems need to use BOOTSTRAPCFLAGS.
  
 2.8.  Installing X  
  
   _2_._7_._2_.  _M_i_c_r_o_s_o_f_t _W_i_n_d_o_w_s _N_T
  
 If everything is built successfully, you can install the software by  
 typing the following as root:  
  
         % make install >& install.log  On NT, make certain your Path, Include, and Lib environment variables
   are set accordingly. For example here we use the command line compiler
   in VC++ 4.0 Standard Edition, which is installed in C:MSDEVSTD. To setup
   the environment type:
  
           > set Path=_o_l_d_-_p_a_t_h;C:\MSDEVSTD\bin;C:\_p_a_t_h_-_t_o_-_R_m_T_r_e_e_C_m_d
           > set Include=C:\MSDEVSTD\include
           > set Lib=C:\MSDEVSTD\lib
  
 Again, you might want to run this in the background and use tail to  Then to build, at the prompt, type:
 watch the progress.  
  
 You can install the manual pages by typing the following as root:          C:\> nmake World.Win32 > world.log
  
         % make install.man >& man.log  
  
  
   _2_._8_.  _I_n_s_t_a_l_l_i_n_g _X
  
 2.8.1.  System Installation Notes  
  
   After the build has successfully completed you can install the software
   by typing the following as root:
  
 This section contains hints on installing and using X with specific com-          % make install >& install.log
 pilers and operating systems.  
   or on Microsoft Windows NT
  
           C:\> nmake install > install.log
  
 2.8.1.1.  The X Server on AIX 4  
  
   Again, you might want to run this in the background and use _t_a_i_l to
   watch the progress.
  
 For IBM's AIX 4, you need to make sure the LFT device is associated with  You can install the manual pages by typing the following as root:
 the correct graphics adapter.  It's a one-time setup that does not hap-  
 pen automatically, even if there's only one graphics adapter in the sys-  
 tem.  To configure the LFT device properly, become root and start SMIT.  
 Go to the "Devices" category, choose "LFT", then "Displays", then "Move  
 the LFT to Another Display".  
  
 Select "Both" for when the change should take effect, then select the          % make install.man >& man.log
 display adapter where you want to run the X server.  Confirm the changes  
 and exit SMIT; from now on, you should be able to run the server just  
 fine.  
  
 To run Xibm from xdm, you must provide the "-force" flag on the server  
 command line in the Xservers file.  
  
  
 2.9.  Shared Libraries  _2_._9_.  _S_h_a_r_e_d _L_i_b_r_a_r_i_e_s
  
  
 The version number of some of the the shared libraries has been changed. The version number of some of the the shared libraries has been changed.
 On SunOS 4, which supports minor version numbers for shared libraries, On SunOS 4, which supports minor version numbers for shared libraries,
 programs linked with the R6 libraries will use the new libraries with no  programs linked with the R6.4 libraries will use the new libraries with
 special action required.  On other platforms you have the following  no special action required.
 choices:  
   On most other modern operating systems the version portion of the li-
   brary name, i.e. "6.1" portion of "libX11.so.6.1" is a string. Even if
   it's only one character long, e.g. "1" (as in libX11.so.1) it's still a
   string. This string uniquely identifies and distinguishes one version of
   the library from another. Even though all the libraries in this release
   are compatible with the libraries from previous releases, and there's
   otherwise no reason to change the version string, we do it to identify
   which source release the libraries were built from.
   
   An old program that was linked with libXext.so.6.3 won't run if you
   delete libXext.so.6.3 and install libXext.so.6.4 in its place. In gener-
   al on these systems you have the following choices:
  
 1.   Keep the old versions of the libraries around. 1.   Keep the old versions of the libraries around.
  
 2.   Relink all applications with the new libraries. 2.   Relink all applications with the new libraries.
  
 3.   Create a link from the old name to the new name.  3.   Create a symlink using the old name which points to the new name.
  
      For example, to have programs that were linked against       For example, to have programs that were linked against libX-
      libX11.so.6.0 use libX11.so.6.3, make this link:       ext.so.6.3 use libXext.so.6.4, make this symlink:
  
              ln -s libX11.so.6.3 libX11.so.6.0               % cd _$_P_r_o_j_e_c_t_R_o_o_t/lib
                % ln -s libXext.so.6.4 libXext.so.6.3
  
  
   On some distributions of Linux the run-time loader is broken -- requir-
   ing that the library's internal SONAME match the _f_i_l_e_n_a_m_e -- and the
   symlink solution won't work. We recommend that you get a new run-time
   loader which is not broken or recompile your run-time loader to not re-
   quire that the SONAME match.
  
 2.10.  Setting Up xterm  
  
   _2_._1_0_.  _S_e_t_t_i_n_g _U_p _x_t_e_r_m
  
 If your /etc/termcap and /usr/lib/terminfo databases do not have correct  
 entries for xterm, use the sample entries provided in the directory  
 xc/programs/xterm/.  System V users may need to compile and install the  
 terminfo entry with the tic utility.  
  
 Since each xterm will need a separate pseudoterminal, you need a reason-  If your //eettcc//tteerrmmccaapp and //uussrr//lliibb//tteerrmmiinnffoo databases do not have correct
   entries for _x_t_e_r_m, use the sample entries provided in the directory
   xxcc//pprrooggrraammss//xxtteerrmm//. System V users may need to compile and install the
   tteerrmmiinnffoo entry with the _t_i_c utility.
   
   Since each _x_t_e_r_m will need a separate pseudoterminal, you need a reason-
 able number of them for normal execution.  You probably will want at able number of them for normal execution.  You probably will want at
 least 32 on a small, multiuser system.  On most systems, each pty has  least 32 on a small, multiuser system. On most systems, each pty has two
 two devices, a master and a slave, which are usually named  devices, a master and a slave, which are usually named
 /dev/tty[pqrstu][0-f] and /dev/pty[pqrstu][0-f].  If you don't have at /dev/tty[pqrstu][0-f] and /dev/pty[pqrstu][0-f].  If you don't have at
 least the "p" and "q" sets configured (try typing "ls /dev/?ty??"), you least the "p" and "q" sets configured (try typing "ls /dev/?ty??"), you
 should have your system administrator add them.  This is commonly done should have your system administrator add them.  This is commonly done
 by running the MAKEDEV script in the /dev directory with appropriate ar-  by running the _M_A_K_E_D_E_V script in the //ddeevv directory with appropriate ar-
 guments. guments.
  
  
 2.11.  Starting Servers at System Boot  _2_._1_1_.  _S_t_a_r_t_i_n_g _S_e_r_v_e_r_s _A_u_t_o_m_a_t_i_c_a_l_l_y _a_t _S_y_s_t_e_m _B_o_o_t
   
  
   The _x_f_s and _x_d_m programs are designed to be run automatically at system
   startup. Please read the manual pages for details on setting up configu-
   ration files; reasonable sample files are in xxcc//pprrooggrraammss//xxddmm//ccoonnffiigg// and
   xxcc//pprrooggrraammss//xxffss//.
  
 The xfs and xdm programs are designed to be run automatically at system  Since _x_f_s can serve fonts over the network, you do not need to run a
 startup.  Please read the manual pages for details on setting up confi-  font server on every machine with an X display. You should start _x_f_s be-
 guration files; reasonable sample files are in xc/programs/xdm/config/  fore _x_d_m, since _x_d_m may start an X server which is a client of (depen-
 and xc/programs/xfs/.  dent on) the font server.
  
  
 2.11.1.  On BSD-based systems using /etc/rc  _2_._1_1_._1_.  _O_n _B_S_D_-_b_a_s_e_d _s_y_s_t_e_m_s _u_s_i_n_g _/_e_t_c_/_r_c _o_r _/_e_t_c_/_r_c_._l_o_c_a_l
  
  
 If your system uses an /etc/rc file at boot time, you can usually enable  If your system uses an //eettcc//rrcc or //eettcc//rrcc..llooccaall file at boot time, you
 these programs by placing the following at or near the end of the file:  can usually enable these programs by placing the following at or near
   the end of the file:
  
         if [ -f /usr/X11R6.3/bin/xfs ]; then          if [ -f _$_P_r_o_j_e_c_t_R_o_o_t/bin/xfs ]; then
                 /usr/X11R6.3/bin/xfs & echo -n ' xfs'                  _$_P_r_o_j_e_c_t_R_o_o_t/bin/xfs & echo -n ' xfs'
         fi         fi
  
         if [ -f /usr/X11R6.3/bin/xdm ]; then          if [ -f _$_P_r_o_j_e_c_t_R_o_o_t/bin/xdm ]; then
                 /usr/X11R6.3/bin/xdm; echo -n ' xdm'                  _$_P_r_o_j_e_c_t_R_o_o_t/bin/xdm; echo -n ' xdm'
         fi         fi
  
  
 Since xfs can serve fonts over the network, you do not need to run a  On later versions of FreeBSD the preferred way of doing this is to cre-
 font server on every machine with an X display.  You should start xfs  ate the directory _$_P_r_o_j_e_c_t_R_o_o_t/etc/rc.d. Add this directory to the _l_o_-
 before xdm, since xdm may start an X server which is a client of the  _c_a_l___s_t_a_r_t_u_p variable defined in /etc/rc.conf, and then create short
 font server.  scripts in this directory to start xfs and xdm.
   
 The examples here use /usr/X11R6.3/bin, but if you have installed into a  
 different directory by setting (or unsetting) ProjectRoot then you need  
 to substitute the correct directory.  
  
 If you are unsure about how system boot works, or if your system does If you are unsure about how system boot works, or if your system does
 not use /etc/rc, consult your system administrator for help.  not use //eettcc//rrcc, consult your system administrator for help.
   
   
   _2_._1_1_._2_.  _O_n _L_i_n_u_x _s_y_s_t_e_m_s
   
  
   Most Linux distributions have an /etc/inittab entry specifically for
   xdm. Depending on your distribution this may be _r_u_n_-_l_e_v_e_l three, four,
   or five. To use xdm, edit //eettcc//iinniittttaabb and find the line which contains
   _i_n_i_t_d_e_f_a_u_l_t and change it from 2 to the appropriate run-level
  
 2.11.2.  On SystemV-based systems  You Linux distribution may already have a script to start xdm at a par-
   ticular run-level. For example on S.u.S.E. Linux 5.0 there is the file
   /sbin/init.d/xdm, and the symlink /sbin/init.d/rc3.d/S30xdm which points
   to /sbin/init.d/xdm. Change /sbin/init.d/xdm to use _$_P_r_o_j_e_c_t_-
   _R_o_o_t_/_b_i_n_/_x_d_m. You can use the xdm script as a model write an xfs script.
   Depending on your Linux distribution you may find these files in
   /etc/init.d instead of /sbin/init.d.
  
  
 There are two ways you can get On systems with a /etc/inittab file, you  _2_._1_1_._3_.  _O_n _D_i_g_i_t_a_l _U_n_i_x_, _H_P_U_X _1_0_, _a_n_d _S_V_R_4 _s_y_s_t_e_m_s
 can edit this file to add the lines  
  
         xfs:3:once:/usr/X11R6.3/bin/xfs  
         xdm:3:once:/usr/X11R6.3/bin/xdm  
  
   Most systems run xdm by default at some particular run-level of the sys-
   tem. There is a master _i_n_i_t_._d file and a run-level symlink _r_c_?_._d that
   points to the master _i_n_i_t_._d file:
   Operating System    rc?.d symlink            init.d file
  
 On some systems, you can edit a file in /etc/init.d to run the X Consor-  Digital Unix 4.0    /sbin/rc3.d/S95xlogin    /sbin/init.d/xlogin
 tium xdm instead of the vendor's product xdm.  On Sony this file is  HPUX 10.20          /sbin/rc3.d/S800xdm      /sbin/init.d/xdm
 /etc/init.d/consxdm.  On IRIX edit /etc/init.d/xdm.  Solaris 2.[0-4]
   Solaris 2.5         /etc/rc3.d/S99xdm        /etc/init.d/xdm.rc
   Solaris 2.6         /etc/rc2.d/S99dtlogin    /etc/init.d/dtlogin
   IRIX 6.2            /etc/rc2.d/S98xdm        /etc/init.d/xdm
   Unixware            /etc/rc2.d/S69xdm        /etc/init.d/xdm
  
   In general you can edit the _i_n_i_t_._d file to use _$_P_r_o_j_e_c_t_R_o_o_t//bbiinn//xxddmm. You
   can use the xdm file as a model to write an /etc/rc?.d/S??xfs file to
   start xfs. Some systems may already have files to start xfs. Starting in
   Solaris 2.5 Sun uses inetd to start xfs -- you should remove the xfs en-
   tries from /etc/inetd.conf and /etc/services before adding xfs to the
   run-level files.
  
 2.12.  Using OPEN LOOK applications  
  
   _2_._1_1_._4_.  _O_n _S_y_s_t_e_m_V_-_b_a_s_e_d _s_y_s_t_e_m_s
  
 You can use the X11R6 Xsun server with OPEN LOOK applications, but you  
 must pass the -swapLkeys flag to the server on startup, or the OPEN LOOK  On systems with a //eettcc//iinniittttaabb file, you can edit this file to add the
   lines
   
           xfs:3:once:_$_P_r_o_j_e_c_t_R_o_o_t/bin/xfs
           xdm:3:once:_$_P_r_o_j_e_c_t_R_o_o_t/bin/xdm
   
   
   
   
   _2_._1_2_.  _U_s_i_n_g _O_P_E_N _L_O_O_K _a_p_p_l_i_c_a_t_i_o_n_s
   
   
   You can use the X11R6.x Xsun server with OPEN LOOK applications; but you
   must pass the --sswwaappLLkkeeyyss flag to the server on startup, or the OPEN LOOK
 Undo, Copy, Paste, Find, and Cut keys may not work correctly.  For exam- Undo, Copy, Paste, Find, and Cut keys may not work correctly.  For exam-
 ple, to run Sun's OpenWindows 3.3 desktop environment with an X11R6 ple, to run Sun's OpenWindows 3.3 desktop environment with an X11R6
 server, use the command: server, use the command:
  
         % openwin -server /usr/X11R6.3/bin/Xsun -swapLkeys          % openwin -server _$_P_r_o_j_e_c_t_R_o_o_t_/_b_i_n_/_X_s_u_n _-_s_w_a_p_L_k_e_y_s
  
  
 The keysyms reported by keys on the numeric keypad have also changed The keysyms reported by keys on the numeric keypad have also changed
 since X11R5; if you find that OpenWindows applications do not respond to since X11R5; if you find that OpenWindows applications do not respond to
 keypad keys and cursor control keys when using the R6 server, you can  keypad keys and cursor control keys when using an R6 server, you can
 remap the keypad to generate R5 style keysyms using the following xmod-  remap the keypad to generate R5 style keysyms using the following
 map commands:  _x_m_o_d_m_a_p commands:
  
         keysym Pause = F21         keysym Pause = F21
         keysym Print = F22         keysym Print = F22
Line 695 
Line 721 
  
  
  
 2.13.  Rebuilding after Patches  _2_._1_3_.  _R_e_b_u_i_l_d_i_n_g _a_f_t_e_r _P_a_t_c_h_e_s
   
   
 You shouldn't need this right away, but eventually you are probably go-  
 ing to make changes to the sources, for example by applying any public  
 patches that may be released.  
  
 Each patch comes with explicit instructions at the top of it saying what  
 to do.  Thus the procedure here is only an overview of the types of com-  
 mands that might be necessary to rebuild X after changing it.  
  
 If you are building from CD-ROM, apply the patches to the symbolic link  Eventually you are going to make changes to the sources, for example by
 tree.  The links to changed files will be replaced with local files con-  applying any public patches that may be released or to fix any bugs you
 taining the new contents.  may have found.
  
 If only source files are changed, you should be able to rebuild just by  If only source files are changed, rebuild by going to the base of your
 going to the xc directory in your build tree and typing:  source tree xxcc and typing:
  
         % make >& make.log         % make >& make.log
  
  
 If configuration files are changed, the safest thing to do is type:  If there are imake configuration file changes, the best thing to do is
   type:
  
         % make Everything >& every.log         % make Everything >& every.log
  
  
 "Everything" is similar to "World" in that it rebuilds every Makefile,  "Everything" is similar to "World" in that it rebuilds every MMaakkeeffiillee,
 but unlike "World" it does not delete the existing objects, libraries, but unlike "World" it does not delete the existing objects, libraries,
 and executables, and only rebuilds what is out of date. and executables, and only rebuilds what is out of date.
  
  
 2.14.  Formatting the Documentation  _2_._1_4_.  _F_o_r_m_a_t_t_i_n_g _t_h_e _D_o_c_u_m_e_n_t_a_t_i_o_n
  
  
 The PostScript files in xc/doc/hardcopy can be generated from the  The PostScript files in xxcc//ddoocc//hhaarrddccooppyy can be generated from the
 sources in xc/doc/specs.  Most of the documentation is in troff using  sources in xxcc//ddoocc//ssppeeccss. Most of the documentation is in troff using the
 the -ms macros.  The easiest way to format it is to use the Imakefiles  -ms macros. The easiest way to format it is to use the Imakefiles pro-
 provided.  vided.
  
 Set the name of your local troff program by setting the variable  Set the name of your local troff program by setting the variable TTrrooff--
 TroffCmd in xc/config/cf/site.def.  Then build the Makefiles:  ffCCmmdd in xxcc//ccoonnffiigg//ccff//ssiittee..ddeeff. Then build the Makefiles:
  
         cd xc/doc         cd xc/doc
         make SUBDIRS=specs Makefiles         make SUBDIRS=specs Makefiles
  
  
 Finally, go to the directory you are interested in and type "make" Finally, go to the directory you are interested in and type "make"
 there.  This command will generate .PS files.  You can also generate  there. This command will generate ..PPSS files. You can also generate text
 text files by specifying the document name with a .txt extension as a  files by specifying the document name with a ..ttxxtt extension as a _m_a_k_e
 make target, e.g., "make icccm.txt".  target, e.g., "make icccm.txt".
   
   
   _3_.  _P_u_b_l_i_c _P_a_t_c_h_e_s
   
   
   The Open Group X Project Team may from time to time issue public patches
   for this release to fix any serious problems that are discovered. Such
   fixes are a subset of fixes available to X Project Team members. Public
   patches are available via anonymous FTP from
   ftp://ftp.x.org/pub/R6.4/fixes, or from your local X mirror site.  Check
   the site closest to you first.
   
   You can determine which public patches have already been applied to your
   source tree by examining the "VERSION" line of xxcc//bbuugg--rreeppoorrtt. The source
   in the tar files you have may already have some patches applied; you on-
   ly need to apply later patches. If you try to apply patches out of order
   or apply patches that are already in your tree, _p_a_t_c_h will tell you that
   you have the wrong version and not apply the patch.
   
   Source for the _p_a_t_c_h program is in xxcc//uuttiill//ppaattcchh//. The _p_a_t_c_h program in-
   cluded on some systems may not support all the options this version has.
   If you have problems applying patches, or if you're otherwise in doubt,
   use this version.
  
  


Legend:
Removed from v.1.1.1.4  
changed lines
  Added in v.1.1.1.5

Powered by
ViewCVS 0.9.2