Annotation of 43BSDTahoe/new/X/doc/installation/in.3, revision 1.1

1.1     ! root        1: .NH
        !             2: Installation Steps
        !             3: .PP
        !             4: This chapter explains in greater detail the steps covered in the overview.
        !             5: It presumes the source hierarchy has been loaded in some convenient location,
        !             6: and that the \fI/usr/new\fP directory
        !             7: and \fI/usr/new/lib\fP directory already exist.
        !             8: If you
        !             9: have source or object for other display types in their device dependent
        !            10: directories, you should edit the X/X/Makefile to build them.
        !            11: .PP
        !            12: This distribution was tested under the following versions of different
        !            13: vendors systems.
        !            14: .DS
        !            15:        4.3BSD
        !            16:        Ultrix 1.2
        !            17:        Sun 3.0
        !            18:        Apollo 9.5
        !            19:        Integrated Solutions 3.07
        !            20:        IBM 4.2A Release 2.
        !            21: .DE
        !            22: You are on your own if you are using versions prior to those listed above.
        !            23: We recommend upgrading to the later releases.
        !            24: In particular, the server will not run on IBM 4.2A release 1,
        !            25: and previous releases of the other systems may or may not work properly.
        !            26: It is impossible for us to keep straight all the different versions
        !            27: of different vendor's systems.
        !            28: .PP
        !            29: This distribution has not been tested for the Integrated Solutions
        !            30: machine, as we had none available for testing.
        !            31: .PP
        !            32: The Apollo testing showed the installation to be quite rocky,
        !            33: due to some problems with their C preprocessor,
        !            34: and there was not time for complete integration of the changes required.
        !            35: Good luck; you may need it, but it has been seen to work.
        !            36: .PP
        !            37: The client code should be easily portable to other 4.2BSD based systems,
        !            38: the CCI for example.
        !            39: Some System V based Unix systems also have the Berkeley network
        !            40: support in them, but you are on your own here.
        !            41: .NH 2
        !            42: Prelude
        !            43: .PP
        !            44: NOTE:
        !            45: As X is a network transparent window system, client programs use
        !            46: network facilities to communicate with the window system.
        !            47: Make sure your network code works properly BEFORE attempting to use X.
        !            48: For example, \fItalk(1)\fP should be working properly between normal terminals,
        !            49: or you should be able to \fIrlogin\fP to either the local or to
        !            50: another machine if you have a network.
        !            51: .PP
        !            52: Also make sure you have made as many pseudo-teletypes as possible
        !            53: (cd /dev; MAKEDEV pty0; MAKEDEV pty1).
        !            54: These are used for terminal emulator windows, and it is possible you
        !            55: may use quite a few of them.
        !            56: .PP
        !            57: If you have other machines in your network that run a 4.2BSD derived
        !            58: system, you can also move the C language source code and recompile it
        !            59: on those machines.
        !            60: Performance of the terminal emulator will be improved by use of
        !            61: 4.3BSD's improved pty driver, which is six times faster than the 4.2BSD
        !            62: version.
        !            63: The C applications should be able to communicate with the X server on
        !            64: your display.
        !            65: .NH 2
        !            66: Font and Firmware Files
        !            67: .PP
        !            68: For each device type supported by X, fonts may differ.
        !            69: There may also be local installation restrictions which may
        !            70: prohibit you from using the default location of \fI/usr/new/lib/X\fP
        !            71: for the fonts or other files needed by X (for example, Vs100 firmware).
        !            72: In each device dependent X library should be a file \fIvssite.h\fP
        !            73: which can be tailored to find the fonts and firmware in a different location.
        !            74: Another reason why you may want to change the font and firmware directory
        !            75: locations would be to allow use of the display while not having all of
        !            76: your file systems mounted.
        !            77: Tailor this file to your taste, and modify the master make file to move
        !            78: the fonts and firmware to your location.
        !            79: .PP
        !            80: The binaries are normally installed into \fI/usr/new\fP.
        !            81: If you want to change this, edit the master Makefile and change
        !            82: CONFDIR to the directory you choose.
        !            83: The entry ``make reconfig'' can be used to automatically edit the Makefiles
        !            84: in the directories from \fI/usr/new\fP to your new configuration.
        !            85: .NH 2
        !            86: Reading the distribution.
        !            87: .PP
        !            88: The software comes on a single 1600 BPI magnetic tape in \fItar\fP(1) format.
        !            89: All files will be extracted into a directory named \fBX\fP.
        !            90: An example command would be:
        !            91: .DS
        !            92: \(bu   tar xf /dev/rmt8
        !            93: .DE
        !            94: .PP
        !            95: If you move the distribution to a different machine than the
        !            96: one you read the tape on, use care to preserve
        !            97: the symbolic links, either by moving the distribution as a single file
        !            98: or by using \fItar\fP across the net.
        !            99: If you don't, you will end up with more than one copy of certain key
        !           100: include files, and may get confused later if you make changes.
        !           101: .NH 2
        !           102: Building the server
        !           103: .PP
        !           104: If you only want to build the client programs on a machine that does
        !           105: not have a display, you can skip this step.
        !           106: .PP
        !           107: If you have a display on your workstation, you can build a server
        !           108: for your display.
        !           109: The types of displays supported under the MIT distribution include
        !           110: the DEC VS100, VS-1, VS-2 and VS-2 RC, most Sun workstation displays,
        !           111: the Apollo displays, the IBM RT/PC displays under 4.2A only
        !           112: (this distribution will NOT run under AIX!), and the Integrated
        !           113: Solutions Optimim V workstations.
        !           114: Servers for other displays may only be available from the manufacturers.
        !           115: Examples of this include the Vaxstation II/GPX from Digital, the
        !           116: HP Bobcats, and Sony displays.
        !           117: .PP
        !           118: To build the server for your machine,
        !           119: type one of the following:
        !           120: .DS
        !           121: .ta .5i 2.0i
        !           122: .TA .5i 2.0i
        !           123: \(bu   make dec        # for Digital Vs100 and VS1 and VS2
        !           124: \(bu   make sun        # for Sun workstations
        !           125: \(bu   make apollo     # for Apollo Computer workstations
        !           126: \(bu   make is         # for Integrated Solutions workstations
        !           127: \(bu   make ibm        # for IBM RT/PC under 4.2A
        !           128: .DE
        !           129: .PP
        !           130: This should complete with no errors on the DEC, Sun, and IBM workstations.
        !           131: The Apollo compiler may generate a number of warnings, and
        !           132: X/dispatch.c takes a LONG time to compile.
        !           133: The Apollo preprocessor has problems with several macros new to release 4;
        !           134: you will have to edit out all occurences of "B16", and "UBPS" should be
        !           135: changed to 1.
        !           136: These macros are defined to make it easier to port X to
        !           137: machines where a short is not 2 bytes.
        !           138: .NH 2
        !           139: Building Software
        !           140: .PP
        !           141: To build executable versions of all X programs,
        !           142: execute the command 
        !           143: .DS
        !           144: \(bu   make all
        !           145: .DE
        !           146: in the main directory.
        !           147: .PP
        !           148: Compiling all software takes quite a while. 
        !           149: Building the X library takes the longest, as there are more than one
        !           150: hundred fifty modules.
        !           151: This should complete without error on most machines.
        !           152: .NH 2
        !           153: Installing the X Executables
        !           154: .PP
        !           155: As super user,
        !           156: execute the command 
        !           157: .DS
        !           158: \(bu   make install
        !           159: .DE
        !           160: This should complete without error.
        !           161: .PP
        !           162: This  also copies all necessary files for users to program
        !           163: using X into \fI/usr/include/X\fP.
        !           164: .PP
        !           165: You should also install the correct termcap and terminfo (if
        !           166: applicable)
        !           167: files out of
        !           168: \fIxterm/termcap\fP and \fIxterm/terminfo\fP into \fI/etc/termcap\fP
        !           169: and your terminfo database if they are not already there.
        !           170: .PP
        !           171: The \fIxinit\fP program, useful
        !           172: on machines without the proper init support for login,
        !           173: expects that the running server to be called "X".
        !           174: You can either rename the appropriate server for your display,
        !           175: or use the correct arguments to \fIxinit\fP.
        !           176: .NH 2
        !           177: Building a Kernel With the Device Driver
        !           178: .PP
        !           179: On some machines, the display driver or other
        !           180: auxilary file may not come configured into
        !           181: the system or other device files may not exist.
        !           182: You must add a line to your configuration file for each display you have.
        !           183: Make sure the CSR address matches between your configuration file and your
        !           184: hardware.
        !           185: The VS100 driver comes with 4.3BSD.
        !           186: Configure, make, and install the kernel containing the display driver.
        !           187: When you reboot the machine, make sure that your display auto configures
        !           188: during boot.
        !           189: .PP
        !           190: You should also make a device entry for each display.
        !           191: For a Vs100, change directory to \fI/dev\fP,
        !           192: and perform a ``MAKEDEV vs?'', where `?' is the number of the Vs100 as root.
        !           193: For a QVSS on a MicroVAX,
        !           194: the command would be 
        !           195: .DS
        !           196: \(bu   /etc/mknod /dev/mouse c 35 2    # if /dev/mouse does not exist on a VS-2.
        !           197: \(bu   /etc/mknod /dev/bell c 12 2     # for bell to ring on a Sun.
        !           198: \(bu   MAKEDEV displays                # for displays on the RT/PC
        !           199: .DE
        !           200: Normally, the protection on the device would be only user read/write,
        !           201: but for debugging purposes you may want to temporarily change it.
        !           202: On a DEC VS-2, you should also adb /sys/vaxuba/qv.o and change
        !           203: the variable "qv_def_scrn" to 2 and rebuild your system.
        !           204: This will cause the correct screen parameters to be used on the VR-260 monitor.
        !           205: .NH 2
        !           206: Testing and Trouble Shooting
        !           207: .PP
        !           208: We highly recommend testing before attempting to enable
        !           209: login on the display.
        !           210: Error messages will go to your terminal, rather than being logged in 
        !           211: the file \fI/usr/adm/X?.hosts\fP.
        !           212: You can use \fIxinit(1)\fP to aid you in testing, but
        !           213: it is most easily performed from terminal or from across the network.
        !           214: .PP
        !           215: To test a Vs100 on line 0, for example,
        !           216: you would change directory to /usr/new (or wherever you decided to put the
        !           217: executable programs), and would type ``Xvs100 0 0 &''.
        !           218: (For a MicroVAX, the command would be ``Xqvss 0 0 &'').
        !           219: The first argument is which device to use (in this case \fI/dev/vs0\fP
        !           220: will be used).
        !           221: There can only be one display on a MicroVAX.
        !           222: The second argument is ignored.
        !           223: See the \fIX(8c)\fP and the manual pages
        !           224: for particular servers manual page for other options.
        !           225: .PP
        !           226: If everything succeeds, you should get a grey background and a large
        !           227: X cursor on the screen.
        !           228: For reasons we have never understood, it may take three tries to get a
        !           229: VS100 display to respond.
        !           230: If not, the most common mistake is the fonts or firmware to be in the
        !           231: wrong location or a directory or file to not be readable.
        !           232: .PP
        !           233: You should now be able to run any of the X programs.
        !           234: A common beginning mistake would be to forget to set the "DISPLAY"
        !           235: environment variable.
        !           236: Most programs also take arguments to specify the host and display number.
        !           237: So, for convenience while testing, you might execute the
        !           238: command ``setenv DISPLAY \fIyourhost\fP:0'' where \fIyourhost\fP is the name of your
        !           239: machine when using the C-shell.
        !           240: This variable will be set for you automatically
        !           241: when you log in in the future.
        !           242: .PP
        !           243: A common problem that might prevent the \fIxterm(1)\fP
        !           244: program from working is it
        !           245: not being set user ID and owned by root.
        !           246: The installation makefiles should be installing \fIxterm(1)\fP this way.
        !           247: \fIXterm\fP may also fail if the files described in the previous
        !           248: section are not consistent, or if you attempt to use an xterm built
        !           249: before the \fI/etc/init\fP changes were installed.
        !           250: .PP
        !           251: If everything is working, you should be ready to enable the line for login.
        !           252: .NH 2
        !           253: Automatic Login Support
        !           254: .PP
        !           255: Some systems are capable of starting the server and a login \fIxterm\fP
        !           256: automatically, in particular 4.3BSD and Ultrix 1.2 and later.
        !           257: If your system does not support the new /etc/ttys format,
        !           258: you should skip this section.
        !           259: On other systems, if you have source for 4.3BSD you may want to
        !           260: install this support.
        !           261: Mere mortals should probably think long and hard before risking such
        !           262: installation, but wizards may find it not too difficult.
        !           263: Affected programs include \fI/etc/init\fP, \fI/etc/getty\fP, \fI/bin/login\fP,
        !           264: and C library routines \fIttyname\fP(3), \fIisatty\fP(3), \fIttyslot\fP(3) and
        !           265: all programs that depend on the format of \fI/etc/ttys\fP, \fI/etc/gettytab\fP
        !           266: and \fI/etc/utmp\fP.
        !           267: The programs need to be installed as a set, and \fIxterm\fP must be recompiled.
        !           268: .PP
        !           269: To avoid a possible race condition, and to allow consistent Unix program
        !           270: behavior, we dedicate a pseudo teletype for each display's login window.
        !           271: All other pty's are allocated dynamically when used.
        !           272: You will use many pty's, so make as many as possible.
        !           273: Pseudo TTY's come in pairs, the master and the slave.
        !           274: We rename them to be ``ttyv?'' where `?' is the number of the display.
        !           275: .PP
        !           276: So for example,
        !           277: we might execute the commands:
        !           278: .DS
        !           279: \(bu   cd /dev
        !           280: \(bu   MAKEDEV pty0
        !           281: \(bu   MAKEDEV pty1
        !           282: \(bu   mv ttyqf ttyv0          # may already exist on some machines
        !           283: \(bu   mv ptyqf ptyv0
        !           284: .DE
        !           285: and similarly for any other displays.
        !           286: When logged in, you would appear to be logged in on ``ttyv0'' in this case.
        !           287: We use the last pseudo teletypes since all other utilities start searching
        !           288: from lower to higher, and we'd just as soon have them find a pty as soon
        !           289: as they can.
        !           290: .NH 2
        !           291: Configuring Lines in /etc/ttys
        !           292: .PP
        !           293: If you started X in the previous step, you will want to abort it now.
        !           294: For each display you have on a machine, you
        !           295: must have a line in \fI/etc/ttys\fP to drive the terminal emulator used for
        !           296: login and the window system server.
        !           297: NOTE:
        !           298: The format of the \fI/etc/ttys\fP file has changed radically between 4.2 and
        !           299: 4.3.
        !           300: You cannot set up a display for login on a 4.2BSD system without installing
        !           301: new versions of \fI/etc/init\fP,
        !           302: \fI/etc/getty\fP, and \fI/bin/login\fP from 4.3.
        !           303: .PP
        !           304: An example line in \fI/etc/ttys\fP is given in the \fIX(8c)\fP manual page
        !           305: (though you will have to customize the line for the location and names of
        !           306: the executable programs).
        !           307: An example for a Vs100 installed without any reconfiguration on 4.3BSD
        !           308: might be:
        !           309: .sp
        !           310:        ttyv0 "/usr/new/xterm -L =-1+1 :0" xterms on window="/usr/new/Xvs100 0"
        !           311: .sp
        !           312: You can customize these commands to taste.
        !           313: .PP
        !           314: You can tell \fIinit(8)\fP to re-read the \fI/etc/ttys\fP file by the command
        !           315: ``kill -1 1'' as super user.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.