INSTALL 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219
  1. .----------------------------------------------------------.
  2. | ECU INSTALL - last revised Sun Sep 8 15:04:34 EDT 1996 |
  3. `----------------------------------------------------------'
  4. MAKING AND INSTALLING
  5. 1. Unshar all of the shars, or untar/uncpio the release media.
  6. SHARS:
  7. I do not intentionally put anything in shell archives that is
  8. dangerous, but it is very, very unwise to unshar as root.
  9. Unpack shell archives as an unprivileged user.
  10. Make a directory and cd into it. Use an unshar program
  11. to extract all of the forty-odd parts of ECU and the three
  12. or so parts of the manual. If you do not have unshar, it
  13. may be quicker to find one than to extract ecu without it.
  14. However, if you must, edit each shar and remove all lines
  15. prior to #!/bin/sh and then feed each file to /bin/sh, like
  16. /bin/sh < part
  17. TAR/CPIO:
  18. Unpack the archive in a ???/src directory. A directory
  19. named ???/src/ecu-?.?? will be created with the unpacked
  20. distribution in it.
  21. cd ecvu-?.??
  22. 2. Type ./Configure
  23. This procedure builds Makefiles for ECU specific to your
  24. system. You must have your native compiler available for this.
  25. 3. Configure will compile and run config.
  26. Answer the questions. If you are using a supported system,
  27. answering the few simple questions is all that is necessary
  28. to produce a usable configuration. (If you are trying to
  29. port it, make your best guess, hack the Makefiles and sources
  30. and send them to me with your patches.)
  31. After answering these questions, the config program will thank
  32. you (;->) and then build Makefiles from the Make.src files in
  33. each appropriate subdirectory.
  34. If you are porting to a new system, you will want
  35. to examine and modify the Makefiles before proceeding.
  36. 4. The configure script suggests you "make depend". This is
  37. unnecessary if you are building ECU for the first time. Also,
  38. most patches will require you to rerun Configure. Each time you
  39. reconfigure the software, it is automatically completely remade
  40. when you next run make. Only if you anticipate making changes to
  41. the software is "make depend" necessary to ensure the code is
  42. properly made.
  43. 5. Type 'make'. Wait and watch a while. This is a good time to
  44. be reading over doc/ecu.man and various READMEs. The
  45. CHANGES and *HISTORY* files have some note on every change
  46. made since 3.16. Unfortunately, they also contain
  47. technical/historical information of no interest.
  48. You may ignore the warnings GCC emits (but not alas any errors :>).
  49. 6. Su to root, if not already there, and type 'make install'.
  50. 7. The default models/funckeymap is copied to the ECU library
  51. as part of installing the program. You will probably need
  52. to study and modify this file if you plan to use a console
  53. (user tty) other than the native console of your system
  54. or if you are attempting to use ECU on a unsupported system.
  55. 8. You may have to, as root, chmod +rwx your uucp locks directory.
  56. In addition, if you are on a machine which does not enjoy
  57. ecuungetty support, you may have to, as root, chmod +rw all
  58. tty lines used by ecu. If choose to run ecu setuid to uucp,
  59. then lines owned by uucp will be available to ecu wherther
  60. or not the machine has ecuungetty support and regardless of
  61. how you configured ecuungetty.
  62. 9. Dialer programs provide rigorous no-compromise modem control.
  63. The gendial subdirectory contains some rigorous, yet
  64. experimental, SCO dialer programs for use with ecu, cu and uucico.
  65. They are currently undocumented and "as-is." I have used each
  66. of them successfully at one time or another, but some have been
  67. modified since they were last proven to work.
  68. I use the T2500 and USR 2400 programs all the time.
  69. Make sure you like the modem options before using one of these
  70. dialers. In particular, I enable remote access to Telebits.
  71. 10. Make neat removes many temporary files that tend
  72. to accumulate over time. No make targets are removed.
  73. Make clean runs make neat and also removes all .o files.
  74. Make clobber runs make clean and also removes executables.
  75. 11. models/ecu-ansi.tinfo and models/ecu-ansi.tcap are the terminfo
  76. and termcap source, respectively, for the ecu presentation
  77. (when it performs terminal emulation). Both have the name 'ansi'
  78. and 'ecu'.
  79. Notes:
  80. 1. DISPLAY CONFIGURATION
  81. ECU must be executed from a "smart" terminal, one whose termcap
  82. or terminfo description is accurate and fairly complete.
  83. I have found many descriptions lacking. File models/vt100.tinfo
  84. is a robust vt100 entry.
  85. 2. KEYBOARD CONFIGURATION
  86. If you are trying ECU on a previously unsupported machine, you
  87. have the `simple' task of defining your keyboard.
  88. This is accomplished by defining `funckeymap' entries for
  89. your personal ~/.ecu/funckeymap or the system /usr/local/lib/ecu
  90. version. Refer to README.KEYBRD.
  91. 3. KERMIT
  92. C-Kermit 5 (as of version 5A(179)) directly supports ECU's needs.
  93. You will need a ~/.kermrc to set up the desired characteristics.
  94. I use:
  95. set block 3
  96. set win 3
  97. set send packet-l 2048
  98. set receive packet-l 2048
  99. set file name literal
  100. set file type bin
  101. show
  102. But that's me. (Buy the book!!)
  103. 4. XTERMS
  104. If you are using an xterm to run ecu,
  105. 1. the maximum geometry is 80x50
  106. 2. 4014 emulation is untested
  107. 3. you should use the following resources:
  108. XTerm*titeInhibit: true # enable screen clear functions normally
  109. XTerm*curses: true # curses bug fix
  110. If titeInhibit fails to work (some versions which use terminfo as
  111. their basis do fail), then remove the ti and te entries from
  112. /etc/termcap.
  113. The file models/funckeymap has keyboard definitions for a number
  114. of xterm implementations. Use kbdtest3 to determine what key
  115. sequences are generated by each function key. If a key produces
  116. no output or ambiguous output (Home and End both produce the same
  117. sequence), use xev to determine the keysym associated with the
  118. keys in question. Use xmodmap to map the keys to unique
  119. sequences. For instance, on the SunOS MIT server, IPX key
  120. presses of Home and End produce:
  121. Home:
  122. KeyPress event, serial 13, synthetic NO, window 0xd00001,
  123. root 0x8006d, subw 0x0, time 2225786294, (124,70), root:(385,331),
  124. state 0x0, keycode 75 (keysym 0xffd8, F27), same_screen YES,
  125. ^^^
  126. |
  127. `--- name to use with xmodmap
  128. XLookupString gives 0 characters: ""
  129. End:
  130. KeyPress event, serial 15, synthetic NO, window 0xd00001,
  131. root 0x8006d, subw 0x0, time 2225787104, (124,70), root:(385,331),
  132. state 0x0, keycode 119 (keysym 0xffde, R13), same_screen YES,
  133. ^^^
  134. |
  135. `-- name to use with xmodmap
  136. XLookupString gives 0 characters: ""
  137. Then, choose unique strings to map the keys to. I generally use
  138. the SCO function key sequences (described in the very first entry
  139. in the distribution model/funckeymap). Construct XTerm translations
  140. for the chosen sequences. An example for Home (F27) and End (R13)
  141. is shown below.
  142. XTerm*VT100*Translations: #override\
  143. <Key>F27: string(0x1b) string("[H") \n \
  144. <Key>R13: string(0x1b) string("[F") \n \
  145. Shift<Key>Tab: string(0x1b) string("[Z")
  146. Included in the above is a mapping for "backwards Tab," Shift Tab.
  147. Most servers map Shift Tab to generate the same as unshifted Tab
  148. (or not mapped at all).
  149. Run kbdtest3 and see if all keys now produce a unique sequence.
  150. If not, repeat the above process until you have each key producing
  151. a unique sequence.
  152. Sometimes, you just won't be able to get a particular key to work.
  153. For instance, one X server I used refused to generate an event for
  154. Shift Keypad 5 (Shift<Key>KP_5). In these cases, you will have to
  155. choose another key, perhaps a higher numbered function key. Likewise,
  156. if you are using a keyboard unaffected by the True Blue Path,
  157. you may not have a key marked "Home" or "End" (I pity you :-> heh):
  158. choose a replacement you are unlikely to need otherwise.
  159. 5. FAS/i
  160. For the brave, an instrumented version of FAS 2.08 (for i386
  161. SVR3) is included with this release for those who need driver
  162. instrumentation at the cost of performance and portability. It
  163. is not supported (DO NOT CONTACT UWE DOERING ABOUT FAS/i). I am
  164. not at all interested in starting a new tty faction. Uwe has
  165. done a brilliant job of striking a balance between compatibility
  166. and performance. I only name this thing FAS/i to show the
  167. derivation from FAS while marking it as different.