home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / bc-1.03-base.tgz / bc-1.03-base.tar / fsf / bc / Install < prev    next >
Text File  |  1994-11-02  |  3KB  |  86 lines

  1.  
  2. INSTALLATION for GNU bc version 1.03  (Including GNU dc.)
  3. ---------------------------------------------------------
  4.  
  5.   a) Make sure you have a working vsprintf and vfprintf in your library.
  6.      (If your system does not have them in your library, you can get
  7.       one of several stdio packages that are freely copyable.  The GNU
  8.       libc has a complete stdio package.  For Minix 1.5 systems,
  9.       a vsprintf.c is included.)
  10.  
  11.   b) run "configure" with the "standard" options for a configure of gnu
  12.      products.  The major parameter for bc is the "--prefix=path"
  13.      option to find the executable and manual directories.  For more help,
  14.      give the command "configure --help".
  15.  
  16.   c) "make derived"  (If you need it.)
  17.      The distribution contains the files bc.c.dist y.tab.h.dist and
  18.      scan.c.dist.  These are provided so that you do not need a working 
  19.      yacc and flex (lex).  This program was designed to work with the free
  20.      programs byacc (berkeley yacc) and flex.  It should work with other
  21.      versions of yacc and lex, but it is not guaranteed to work.
  22.  
  23.      If you do not have yacc or flex, give the command "make derived" to
  24.      get the *.dist files to their proper place.  This insures that make
  25.      will not try to make these derived files from their original source.
  26.      Use the "make derived" before trying to compile bc and dc.
  27.  
  28.   e) "make"
  29.     compiles bc and dc.
  30.  
  31.   f) "make install"
  32.     installs bc, dc, libmath.b (if needed), bc.1, dc.1 and dc.info
  33.     in their proper directories.
  34.  
  35.   g) Use bc and dc!
  36.  
  37.  
  38. DEFINES
  39. -------
  40.  
  41.   The following defines you may or may not want.  To delete one standardly on,
  42.   edit the Makefile.in.  If you want add their definitions, put their
  43.   definition in an environment variable "CFLAGS" for the configure script.
  44.  
  45.     -DOLD_EQ_OP
  46.      Causes bc to recognize =<op> as the same as <op>=.  The =<op> is
  47.         the old style.  It makes "a =- 1" ambiguous.  With OLD_EQ_OP defined
  48.         it is equivalent to "a -= 1" and with OLD_EQ_OP undefined it is
  49.         equivalent to "a = -1".
  50.  
  51.     -DDOT_IS_LAST
  52.     Causes bc to recognize a single period (".") as a shorthand notation
  53.     for the standard variable "last".  (This is standardly defined.)
  54.  
  55.     -DSMALL_BUF
  56.         Use this IF you are using flex AND you have a systems with limited
  57.         memory space.
  58.  
  59.     -DSHORTNAMES 
  60.     If your compiler keeps a limited number of characters from names,
  61.     you should include this define.  It is needed for the K&R compiler
  62.     on MINIX.
  63.  
  64.     -DDEBUG=n
  65.      Compile the debugging code.  The higher the number, the more
  66.      debugging code.  The degugging code is not very good.
  67.  
  68.  
  69. POSSIBLE PROBLEMS
  70. -----------------
  71.  
  72.   There might be some possible problems compiling due to different
  73.   versions of the header files.  scan.c may require to edit out some
  74.   definitions of malloc and free.  Others should compile with the
  75.   correct set of defines.
  76.  
  77.   Hopefully, the autoconf/configure system should remove all problems.
  78.  
  79.   If you do a "make realclean", it removes all files that can be derived
  80.   from some other files.  This also removes the file "libmath.h" that
  81.   is used by the configure script.  Without it there, the configure
  82.   script makes wrong assumptions about the abilities of your compiler.
  83.   To get things back to the point where configure works well you will
  84.   need to "make libmath.h", "make distclean" and then run configure again.
  85.  
  86.