86 lines
3.3 KiB
Plaintext
86 lines
3.3 KiB
Plaintext
|
|
INSTALLATION for GNU bc version 1.03 (Including GNU dc.)
|
|
---------------------------------------------------------
|
|
|
|
a) Make sure you have a working vsprintf and vfprintf in your library.
|
|
(If your system does not have them in your library, you can get
|
|
one of several stdio packages that are freely copyable. The GNU
|
|
libc has a complete stdio package. For Minix 1.5 systems,
|
|
a vsprintf.c is included.)
|
|
|
|
b) run "configure" with the "standard" options for a configure of gnu
|
|
products. The major parameter for bc is the "--prefix=path"
|
|
option to find the executable and manual directories. For more help,
|
|
give the command "configure --help".
|
|
|
|
c) "make derived" (If you need it.)
|
|
The distribution contains the files bc.c.dist y.tab.h.dist and
|
|
scan.c.dist. These are provided so that you do not need a working
|
|
yacc and flex (lex). This program was designed to work with the free
|
|
programs byacc (berkeley yacc) and flex. It should work with other
|
|
versions of yacc and lex, but it is not guaranteed to work.
|
|
|
|
If you do not have yacc or flex, give the command "make derived" to
|
|
get the *.dist files to their proper place. This insures that make
|
|
will not try to make these derived files from their original source.
|
|
Use the "make derived" before trying to compile bc and dc.
|
|
|
|
e) "make"
|
|
compiles bc and dc.
|
|
|
|
f) "make install"
|
|
installs bc, dc, libmath.b (if needed), bc.1, dc.1 and dc.info
|
|
in their proper directories.
|
|
|
|
g) Use bc and dc!
|
|
|
|
|
|
DEFINES
|
|
-------
|
|
|
|
The following defines you may or may not want. To delete one standardly on,
|
|
edit the Makefile.in. If you want add their definitions, put their
|
|
definition in an environment variable "CFLAGS" for the configure script.
|
|
|
|
-DOLD_EQ_OP
|
|
Causes bc to recognize =<op> as the same as <op>=. The =<op> is
|
|
the old style. It makes "a =- 1" ambiguous. With OLD_EQ_OP defined
|
|
it is equivalent to "a -= 1" and with OLD_EQ_OP undefined it is
|
|
equivalent to "a = -1".
|
|
|
|
-DDOT_IS_LAST
|
|
Causes bc to recognize a single period (".") as a shorthand notation
|
|
for the standard variable "last". (This is standardly defined.)
|
|
|
|
-DSMALL_BUF
|
|
Use this IF you are using flex AND you have a systems with limited
|
|
memory space.
|
|
|
|
-DSHORTNAMES
|
|
If your compiler keeps a limited number of characters from names,
|
|
you should include this define. It is needed for the K&R compiler
|
|
on MINIX.
|
|
|
|
-DDEBUG=n
|
|
Compile the debugging code. The higher the number, the more
|
|
debugging code. The degugging code is not very good.
|
|
|
|
|
|
POSSIBLE PROBLEMS
|
|
-----------------
|
|
|
|
There might be some possible problems compiling due to different
|
|
versions of the header files. scan.c may require to edit out some
|
|
definitions of malloc and free. Others should compile with the
|
|
correct set of defines.
|
|
|
|
Hopefully, the autoconf/configure system should remove all problems.
|
|
|
|
If you do a "make realclean", it removes all files that can be derived
|
|
from some other files. This also removes the file "libmath.h" that
|
|
is used by the configure script. Without it there, the configure
|
|
script makes wrong assumptions about the abilities of your compiler.
|
|
To get things back to the point where configure works well you will
|
|
need to "make libmath.h", "make distclean" and then run configure again.
|
|
|