home *** CD-ROM | disk | FTP | other *** search
/ Dream 52 / Amiga_Dream_52.iso / Linux / Divers / lynx2.8.1dev.10.tar.gz / lynx2.8.1dev.10.tar / lynx2-8 / docs / INSTALLATION.old < prev    next >
Text File  |  1997-09-07  |  20KB  |  400 lines

  1. For a description of Lynx please read the README file.
  2.  
  3.         Lynx Installation guide.
  4.  
  5.         Last Updated February 1997
  6.  
  7. UNIX & VMS Step 1a. 
  8.     Most of the variables that you are likely to change are in the
  9.     userdefs.h file.  There are a few that you must change or verify,
  10.     and a few more that you will probably want to change.  The variables
  11.     that must be changed are marked as such in the userdefs.h file.
  12.     Just edit it and the changes should be straight forward.  You also
  13.     should check LYMessages_en.h for tailoring the Lynx statusline
  14.     prompts, messages and warnings to requirements of your site.
  15.  
  16.     NOTE: Many of the variables in userdefs.h are now configurable in
  17.       the lynx.cfg file.  Please read the lynx.cfg file as well.
  18.       Also see the example mime.types, mailcap and jumps files
  19.       in the samples subdirectory.
  20.  
  21. UNIX & VMS Step 1b. (optional)
  22.     Set up local printers and downloaders
  23.     in the lynx.cfg file.  (see lynx.cfg for details)
  24.  
  25. UNIX & VMS Step 1c. (optional)
  26.       If your system requires the PASV FTP code instead of
  27.       the standard PORT FTP code (e.g., to deal with a
  28.       firewall) then edit WWW/Library/Implementation/HTFTP.c
  29.       and comment out line 43 like so:
  30.       /*  #define LISTEN   /* @@@@ Test LJM */
  31.       On Unix you can define NOPORT in the top Makefile instead
  32.       of changing HTFTP.c
  33.  
  34. UNIX Extra Step: !! CONFIGURATION !!
  35.     There now is a configure script which takes care of system-dependent
  36.     setting automatically.  See the file README.configure for more details.
  37.     You may want to run "./configure --help" first to see what flags are
  38.     available.
  39.  
  40.     Run configure, eg "./configure", and
  41.     wait while it figures out what software is on your
  42.     computer, what type of computer and operating system
  43.     you have, etc, and then finally uses makefile.in
  44.     to produce the makefile that will get used when
  45.     you finally (later on) say "make".
  46.  
  47.     The rest of this file has not yet been updated for installation with
  48.     the configure script.  The information in README.configure is newer
  49.     and should be consulted.  In particular UNIX Steps 1f and 2 below should
  50.     not be necessary on most systems after "./configure" has been run
  51.     (running "make" is of course still required, but it does not reqire
  52.     specifying a system type).  Other points mostly still apply.  If you
  53.     need or want to make manual change in addition to the auto configuration,
  54.     note that "makefile" is now used instead of "Makefile".
  55.  
  56. UNIX Step 1d.  (WAIS support is built into Lynx for VMS, skip to step 1e)
  57.     Adding Direct WAIS support.
  58.     Get the freeWAIS distribution from:
  59.         ftp://ftp.cnidr.org/pub/NIDR.tools/freewais
  60.     and compile it.  The compile process will create some libraries, you will 
  61.     need wais.a and client.a.  Edit the Makefile in the top level  directory 
  62.     and add the library locations under the DIRECT WAIS ACCESS heading.  
  63.     Edit the Makefile for the WWW Library in the
  64.     WWW/Library/Implementation/CommonMakefile to make the WAIS.c sources
  65.     in the library.  If everything goes well you should
  66.     be able to make and have direct WAIS access.
  67.  
  68. UNIX & VMS Step 1e.
  69.     Adding NEWS support.
  70.     To set your site's NTTP server as the default host for news reading
  71.     and posting via Lynx, set the environment variable NNTPSERVER so that
  72.     it points to its Internet address (see Step 5).
  73.  
  74.     For news posting ability to be enabled in Lynx, in userdefs.h (and
  75.     optionally in lynx.cfg) the NEWS_POSTING symbol must be defined to
  76.     TRUE.  Also define LYNX_SIG_FILE in usersdefs.h or lynx.cfg so that
  77.     it points to users' signature files for appending to posted messages.
  78.     For the Organization: header in news postings, Lynx checks for an
  79.     ORGANIZATION or NEWS_ORGANIZATION environment variable.  On Unix,
  80.     Lynx also checks for an /etc/organization file.
  81.  
  82. UNIX Step 1f. (Sun systems)
  83.     Sun resolv library.
  84.     On Sun systems you may need to define RESOLVLIB in the top Makefile
  85.     to enable access to remote hosts.  See the comments in the Makefile
  86.     and PROBLEMS file for more information.
  87.  
  88. VMS Step 1f.
  89.     Downloading binary files.
  90.     Lynx must handle all IO as streams, and on VMS, output files are always
  91.     created with Stream_LF format via the C RTL's fopen().  The file headers
  92.     indicate Implied Carriage Control, even when the transfer was in binary
  93.     mode, which can confuse downloading software and cause corruption of
  94.     the file contents.  To deal with this, you should define the symbol
  95.     USE_FIXED_RECORDS as TRUE in userdefs.h and/or lynx.cfg.  This will
  96.     instruct Lynx to correct the header information to indicate FIXED 512
  97.     records, with No Implied Carriage Control.  If Lynx fails to do the
  98.     conversion (because the file wasn't mapped to a binary MIME type) you can
  99.     execute FIXED512.COM externally to correct the header information.  The
  100.     command file uses Joe Meadow's FILE utility, or the SET FILE/ATTRIBUTES
  101.     command on current versions of VMS, to modify the headers.  See the
  102.     comments in FIXED512.COM, userdefs.h and lynx.cfg for more information.
  103.  
  104.  
  105. UNIX Step 2.
  106.     VMS users skip to 'VMS step 2'
  107.  
  108.     Check the top level Makefile for any site-specific definitions
  109.     you require or desire. Then, you should be ready to compile!
  110.  
  111.     If you type "make" with no arguments you will see a list of 
  112.     supported systems.  If your system type IS listed you just
  113.     need to type "make SYSTEM_TYPE".  For instance, if you are
  114.     running under IBM's RS/6000 AIX 3.2 you would just type
  115.     "make aix32".  If you were running Ultrix you would type
  116.     "make ultrix".
  117.  
  118.     If you are on a SUN workstation and do not have 'gcc' you 
  119.     may change 'gcc' to '/usr/5bin/cc' in the Makefile
  120.  
  121.     If you are on a system that is not listed in the makefile it may be
  122.     more difficult. The first thing you should try is just "make generic",
  123.     this will compile with the "fancy_curses" option, and will give a much
  124.     nicer screen display.  If it doesn't compile or if the screen display
  125.     looks strange (real strange), try compiling with the "low_curses" option.
  126.     Edit the Makefile and remove the '-DFANCY_CURSES' definition under the
  127.     'generic:' entry.  There may be some compatibility problems on some
  128.     systems, but we don't know what they might be at this point.  If you
  129.     are running on a currently unsupported system please contact us via
  130.     the lynx-dev email list (see RELEASE_STATEMENT).  If there are any
  131.     problems we will try to fix them as soon as possible.  
  132.  
  133. VMS step 2.
  134.     Lynx uses the VMS port of gzip for uncompressing streams which have
  135.     Content-Encoding headers indicated compression with gzip or the
  136.     Unix compress.  If you do not have gzip installed on your system
  137.     you can get it from ftp://ftp.wku.edu/ in the fileserv directory.
  138.     The command Lynx uses to uncompress on VMS is "gzip -d".
  139.  
  140.     If you are using the SOCKETSHR library, read SOCKETSHR.announce and
  141.     make sure you have defined SOCKETSHR and SOCKETSHR_LIBRARY as explained
  142.     therein.
  143.  
  144.     A "build.com" and "build-slang.com" script for building Lynx with curses
  145.     or slang is in the top level directory.  All you have to do is type
  146.     "@build" or "@build-slang" and answer its prompt for your system's TCP-IP
  147.     software.  Current choices are:
  148.            MULTINET (default)
  149.        UCX
  150.        WIN_TCP
  151.            CMU_TCP
  152.        SOCKETSHR_TCP
  153.        TCPWARE
  154.     It will autosense whether you have VAXC, DECC or GNUC on VAX or AXP
  155.     and build appropriately.  If a WWWLib already exists for that TCP-IP
  156.     software, it will prompt you for whether you want to rebuild it.  If
  157.     you want to build a WWWLib separately, you can type "@libmake.com"
  158.     with your default directory set to [.WWW.Library.vms] instead doing
  159.     it via "build.com" in the top directory.  You may need to modify
  160.     "build-slang.com", as described in its header, so that it can find
  161.     slang.olb on your system.  If you have both DECC and VAXC, it will
  162.     use DECC to benefit from the newer and more efficient memory management
  163.     functions.
  164.  
  165.     (optional compilation method)
  166.     If you have and want to use MMS, read the header of descrip.mms
  167.     in the top directory and be sure you include the appropriate macro
  168.     definitions when you invoke it:
  169.     $ MMS /Macro = (MULTINET=1)        for VAXC - MultiNet
  170.     $ MMS /Macro = (WIN_TCP=1)        for VAXC - Wollongong TCP/IP
  171.     $ MMS /Macro = (UCX=1)            for VAXC - UCX
  172.     $ MMS /Macro = (CMU_TCP=1)        for VAXC - OpenCMU TCP/IP
  173.     $ MMS /Macro = (SOCKETSHR_TCP=1)    for VAXC - SOCKETSHR/NETLIB
  174.     $ MMS /Macro = (TCPWARE=1)        for VAXC - TCPWare TCP/IP
  175.  
  176.     $ MMS /Macro = (MULTINET=1, DEC_C=1)    for DECC - MultiNet
  177.     $ MMS /Macro = (WIN_TCP=1, DEC_C=1)    for DECC - Wollongong TCP/IP
  178.     $ MMS /Macro = (UCX=1, DEC_C=1)        for DECC - UCX
  179.     $ MMS /Macro = (CMU_TCP=1, DEC_C=1)    for DECC - OpenCMU TCP/IP
  180.     $ MMS /Macro = (SOCKETSHR_TCP=1,DEC_C=1) for DECC - SOCKETSHR/NETLIB
  181.     $ MMS /Macro = (TCPWARE=1, DEC_C=1)    for DECC - TCPWare TCP/IP
  182.  
  183.     $ MMS /Macro = (MULTINET=1, GNU_C=1)    for GNUC - MultiNet
  184.     $ MMS /Macro = (WIN_TCP=1, GNU_C=1)    for GNUC - Wollongong TCP/IP
  185.     $ MMS /Macro = (UCX=1, GNU_C=1)        for GNUC - UCX
  186.     $ MMS /Macro = (CMU_TCP=1, GNU_C=1)    for GNUC - OpenCMU TCP/IP
  187.     $ MMS /Macro = (SOCKETSHR_TCP=1,GNU_C=1) for GNUC - SOCKETSHR/NETLIB
  188.     $ MMS /Macro = (TCPWARE=1, GNU_C=1)    for GNUC - TCPWare TCP/IP
  189.  
  190.         If you just type "MMS" it will default to the MULTINET and VAXC
  191.     configuration.  MMS will build the WWW library and Lynx sources,
  192.     and link the executable.  However, not all of the header dependencies
  193.     are specified.  If you are not a developer, and need a clean build,
  194.     you should use build.com instead of the MMS utility.
  195.  
  196.     If you want SOCKS support on VMS, you must add SOCKS as a compilation
  197.     definition, and the SOCKS library to the link command.  However, instead
  198.     of SOCKSifying Lynx for use behind a firewall, you are better off if you
  199.     build Lynx normally, and set up Lynx to use a proxy server (see below).
  200.     You instead can SOCKSify the proxy server, and it will handle all clients,
  201.     not just Lynx.
  202.  
  203.  
  204. UNIX Step 3.
  205.     Go ahead and test it out with the about_lynx/about_lynx.html file.
  206.     You shouldn't need to install Lynx to test it.
  207.     Once you are satisfied that it works, go ahead and install it.
  208.  
  209.     VERY IMPORTANT!!!!!
  210.         If you are setting up an anonymous account with Lynx you
  211.         are strongly advised to use the -anonymous command line
  212.         option.  If you do not use this option, users may be able
  213.         to gain access to all readable files on your machine.
  214.         ALSO NOTE that many implementations of telnetd allow passing
  215.         of environment variables, which might be used by unscrupulous
  216.         people to modify the environment in anonymous accounts.  When
  217.         making Lynx and Web access publicly available via anonymous
  218.         accounts intended to run Lynx captively, be sure the wrapper
  219.         uses the -cfg switch and specifies the startfile, rather than
  220.         relying on the LYNX_CFG, LYNX_CFG_FILE, or WWW_HOME variables.
  221.  
  222. VMS Step 3. 
  223.     Go ahead and test it out with the [.about_lynx]about_lynx.html file.
  224.     You shouldn't need to install Lynx to test it.
  225.     Once you are satisfied that it works, go ahead and install it.
  226.  
  227.     VERY IMPORTANT!!!!!
  228.         If you are setting up an anonymous account with Lynx you
  229.         are strongly advised to use the -anonymous command line
  230.         option.  If you do not use this option, users will be able
  231.         to gain access to all readable files on your machine.
  232.          ALSO NOTE that some implementations of telnet allow passing
  233.         of environment variables, which might be used by unscrupulous
  234.         people to modify the environment in anonymous accounts.  When
  235.         making Lynx and Web access publicly available via anonymous
  236.         accounts intended to run Lynx captively, be sure the wrapper
  237.         uses the -cfg switch and specifies the startfile, rather than
  238.         relying on the LYNX_CFG, LYNX_CFG_FILE, or WWW_HOME variables.
  239.  
  240.  
  241. UNIX Step 4. (Installation)
  242.     Lynx is very easy to install, if you want Lynx installed anywhere 
  243.     besides "/usr/local/bin", with the man files in "/usr/man/man1", you 
  244.     need to edit the Makefile and change the "exec" and "doc" defines.
  245.     Otherwise just "su" to root and type "make install" and make will
  246.     copy "lynx", "lynx.cfg" and  "lynx.1" to the specified directories.  
  247.     Those are the only two files necessary to run Lynx.  
  248.     lynx.1 isn't really necessary, but it should be available.
  249.     lynx.cfg isn't absolutely necessary either but is the only way
  250.     to configure printers and downloaders (and uploaders if DIRED_SUPPORT
  251.     is implemented), so it is highly recommended.
  252.     Also check out the mailcaps, mime.types and jumps file samples in the
  253.     samples directory.
  254.  
  255. VMS Step 4.
  256.     You need to have the executable in a public place, make it accessible,
  257.     define it as a foreign command, and copy lynx.cfg to "Lynx_Dir".  Look
  258.     at lynx.com in the samples directory as a model for installing Lynx.
  259.     Also check out the mailcaps, mime.types and jumps file samples in the
  260.     samples directory.  To include lynx.hlp in the system HELP library,
  261.     use the command:
  262.  
  263.             $ library/replace sys$help:helplib.hlb lynx.hlp
  264.  
  265.  
  266. UNIX and VMS Step 5.
  267.     Lynx uses some environment variables to regulate it's behavior.
  268.     
  269.     The variable "NNTPSERVER" is used to specify the host which will
  270.     be used as the default for news URLs.
  271.     
  272.     UNIX
  273.         setenv NNTPSERVER "news.server.dom"
  274.     
  275.     VMS
  276.         define/system NNTPSERVER "news.server.dom"
  277.  
  278.  
  279.     The environment variables "ORGANIZATION" or "NEWS_ORGANIZATION", if set,
  280.     will be used for the Organization: header in news postings.
  281.  
  282.  
  283.     The environment variable "LYNX_CFG", if set, will override the default
  284.     location and name of the global configuration file (lynx.cfg) that was
  285.     defined via the constant "LYNX_CFG_FILE" in userdefs.h.  See userdefs.h
  286.     for more information.
  287.  
  288.  
  289.     The environment variable "LYNX_TEMP_SPACE", if set, will override the
  290.     default path prefix for temporary files that was defined via the constant
  291.     "TEMP_SPACE" in userdefs.h.  See userdefs.h for more information.
  292.  
  293.  
  294.     The environment variable "LYNX_SAVE_SPACE", if set, will override the
  295.     default path prefix for files saved to disk that was defined via the
  296.     constant "SAVE_SPACE" in lynx.cfg.  See lynx.cfg for more information.
  297.  
  298.  
  299.     The variable "WWW_HOME", if set, will override the default startup
  300.     URL specified in any of the configuration files.
  301.  
  302.  
  303.     Lynx still supports use of gateway servers, with the servers specified
  304.     via the variables "WWW_access_GATEWAY", where "access" is lower case
  305.     and can be "http", "ftp", "gopher" or "wais".  Most of the gateway
  306.     servers have been discontinued, but "http://www.w3.org:8001" is
  307.     available for wais searches (note that you do not include a terminal
  308.     '/' for gateways, but do for proxies; see below).
  309.  
  310.  
  311.     Lynx version 2.2 and beyond supports the use of proxy servers that can
  312.     act as firewall gateways and caching servers.  They are preferable to
  313.     the older gateway servers.  Each protocol used by Lynx can be mapped
  314.     separately using PROTOCOL_proxy environment variables of the form:
  315.     
  316.         UNIX
  317.                 setenv http_proxy "http://some.server.dom:port/"
  318.                 setenv https_proxy "http://some.server.dom:port/"
  319.                 setenv ftp_proxy "http://some.server.dom:port/"
  320.                 setenv gopher_proxy "http://some.server.dom:port/"
  321.                 setenv news_proxy "http://some.server.dom:port/"
  322.                 setenv newspost_proxy "http://some.server.dom:port/"
  323.                 setenv newsreply_proxy "http://some.server.dom:port/"
  324.                 setenv snews_proxy "http://some.server.dom:port/"
  325.                 setenv snewspost_proxy "http://some.server.dom:port/"
  326.                 setenv snewsreply_proxy "http://some.server.dom:port/"
  327.                 setenv nntp_proxy "http://some.server.dom:port/"
  328.                 setenv wais_proxy "http://some.server.dom:port/"
  329.                 setenv finger_proxy "http://some.server.dom:port/"
  330.                 setenv cso_proxy "http://some.server.dom:port/"
  331.                 
  332.         VMS
  333.                 define "http_proxy" "http://some.server.dom:port/"
  334.                 define "https_proxy" "http://some.server.dom:port/"
  335.                 define "ftp_proxy" "http://some.server.dom:port/"
  336.                 define "gopher_proxy" "http://some.server.dom:port/"
  337.                 define "news_proxy" "http://some.server.dom:port/"
  338.                 define "newspost_proxy" "http://some.server.dom:port/"
  339.                 define "newsreply_proxy" "http://some.server.dom:port/"
  340.                 define "snews_proxy" "http://some.server.dom:port/"
  341.                 define "snewspost_proxy" "http://some.server.dom:port/"
  342.                 define "snewsreply_proxy" "http://some.server.dom:port/"
  343.                 define "nntp_proxy" "http://some.server.dom:port/"
  344.                 define "wais_proxy" "http://some.server.dom:port/"
  345.                 define "finger_proxy" "http://some.server.dom:port/"
  346.                 define "cso_proxy" "http://some.server.dom:port/"
  347.                 (Encase *BOTH* strings in double-quotes to maintain
  348.          lower case for the PROTOCOL_proxy variable and for
  349.          the http access type; include /system if you want
  350.          proxying for all clients on your system.)
  351.  
  352.     If you wish to override the use of a proxy server for specific hosts or
  353.     entire domains you may use the "no_proxy" environment variable. Here is
  354.     an example use of "no_proxy":
  355.           
  356.         UNIX
  357.                 setenv no_proxy "host.domain.dom, domain1.dom, domain2"
  358.                 
  359.         VMS
  360.                 define "no_proxy" "host.domain.dom, domain1.dom, domain2"
  361.  
  362.     You can include a port number in the no_proxy list to override use
  363.     of a proxy server for the host accessed via that port, but not via
  364.     other ports.  For example, if you use "host.domain.dom:119" and/or
  365.     "host.domain.dom:210", then news (port 119) URLs and/or any wais
  366.     (port 210) searches on that host would be excluded, but http, ftp,
  367.     and gopher services (if normally proxied) would still be included,
  368.     as would any news or wais services on other hosts.
  369.  
  370.     If you wish to override the use of a proxy server completely (i.e.,
  371.     globally override any existing proxy variables), set the value of
  372.     "no_proxy" to "*".
  373.  
  374.     Note that Lynx treats file URLs on the local host as requests for
  375.     direct access to the file, and does not attempt ftp if that fails.
  376.     It treats both ftp URLs and file URLs on remote hosts as ftp URLs,
  377.     and does not attempt direct file access for either.  If ftp URLs are
  378.     being proxied, file URLs on a remote host will be converted to ftp
  379.     URLs before submission by Lynx to the proxy server, so no special
  380.     procedure for inducing the proxy server to handle them is required.
  381.     Other WWW clients may require that the http server's configuration
  382.     file have "Map file:* ftp:*" in it to perform that conversion.
  383.  
  384.     The proxy and no_proxy variables also can be set at run time via
  385.     lynx.cfg.
  386.  
  387.     Copies of the Lynx online help are included in the lynx_help
  388.     subdirectory tree and should be made accessible in response to
  389.     the Lynx 'h'elp command by defining HELPFILE in userdefs.h and/or
  390.     lynx.cfg to an appropriate file://localhost/path URL.
  391.     
  392.  
  393. UNIX & VMS Step 6. (Hopefully Optional)
  394.     If something doesn't work, or you can't get it to compile at all, or
  395.     you can't figure out what one of the defines means, or if you just
  396.     want to make a comment, send an email message to the Lynx-Dev mailing
  397.     list (see the README file about subscribing to Lynx-Dev).  Until Lynx
  398.     has been ported to all the world's operating systems, we expect there 
  399.     will be some compatibility problems, but we'll do our best to help you.
  400.