1Copyright 2001 Free Software Foundation, Inc. 2 3This file is part of the GNU MP Library. 4 5This program is free software; you can redistribute it and/or modify it under 6the terms of the GNU General Public License as published by the Free Software 7Foundation; either version 3 of the License, or (at your option) any later 8version. 9 10This program is distributed in the hope that it will be useful, but WITHOUT ANY 11WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A 12PARTICULAR PURPOSE. See the GNU General Public License for more details. 13 14You should have received a copy of the GNU General Public License along with 15this program. If not, see http://www.gnu.org/licenses/. 16 17 18 19 20 DEMONSTRATION CALCULATOR PROGRAM 21 22 23This is a simple program, meant only to show one way to use GMP with yacc 24and lex to make a calculator. Usage and comments on the implementation can 25be found in calc.y. 26 27Within a GMP build tree, the generated Makefile can be used to build the 28program, 29 30 make calc 31 32(or on a DOS system, "make calc.exe"). 33 34Elsewhere, once GMP has been installed, the program can be compiled with for 35instance 36 37 gcc calc.c calclex.c -lgmp -o calc 38 39Or if GNU readline is used then 40 41 gcc calc.c calclex.c calcread.c -lgmp -lreadline -o calc 42 43(again, on a DOS system "-o calc.exe"). 44 45Readline support can be enabled or disabled in calc-config.h. That file is 46created by the GMP ./configure based on the --with-readline option. The 47default is --with-readline=detect, which means to use readline if available. 48"yes" can be used to force it to be used, or "no" to not use it. 49 50The supplied calc.c was generated by GNU bison, but a standard yacc should 51work too. 52 53The supplied calclex.c was generated by GNU flex, but a standard lex should 54work too. The readline support may or may not work with a standard lex (see 55comments with input() in calcread.c). Note also that a standard lex will 56require its library "-ll" on the compile command line. "./configure" sets 57this up in the GMP build tree Makefile. 58 59 60 61---------------- 62Local variables: 63mode: text 64fill-column: 76 65End: 66