%$OpenXM: OpenXM/src/kan96xx/README,v 1.3 2005/06/16 08:46:42 takayama Exp $ README (Updated: 1999/11/08) "Kan/sm1" is a system for doing algebraic analysis by computer based on computations of Groebner bases. It is also useful to teach basic notions such as stack, reccursive call, object oriented naming system. This material may be freely distributed as is. This distribution contains only a few examples in the Doc directory. So, if you have questions, please send a mail to kan@math.kobe-u.ac.jp Directories ----------- Kan Source files of the kan-library and kan-virtual-machine (kan/sm1). gc Garbage collector written by Hans-J. Boehm and Alan J. Demers. See the README of this directory for the details. In order to get the newest version of it, ftp from beta.zerox.com gmp GNU MP package Doc Documents. Type in "make" to get the document ttt.tex, onlinehelp.tex. "ttt.tex" is generated from ex.tex. "onlinehelp.tex" will be generated from the running version of sm1. ttt.tex : introduction, onlinehelp.tex : macro reference manual. Library files. This directory contains many libraries with an easy user interface written by sm1. To load all libraries, type in (cohom.sm1) run in sm1. See Section 3 of onlinehelp.tex for details. lib symbolic link to Doc. bibreference.tex : A sample citation of kan/sm1. plugin : plugin modules for sm1. Open XM support. Makefile : makefile Installation ------------ <<1>> The kan/sm1-system is mainly developed and tested on the Linux operating system with the elf-kernel version 1.2.13 and FreeBSD 2.x and 3.x. The system will be run on the machines with ansi C-compilers on which the Garbage collector of Boehm and Demers works. If you use the same environment, you need no configuration. (On some versions of Linux, you must modify Kan/Makefile following the comment in it.) Set the load path for library files if necessary. ==> see (B) below. Then, just type: % make all You will have sm1 in the directory Kan. Move this file to a directory on your search path. (For example, mv sm1 ~/bin or mv sm1 /usr/local ) ------------------------------------------------- (A) No plugin If you do not need plugin modules for socket and so on, then (1) edit Kan/Makefile and delete all lines begin with PLUGIN. (2) Type in "make all2" -------------------------------------------------- (B) Loading path Edit the Kan/stackm.h and change the value #define LOAD_SM1_PATH "/usr/local/lib/sm1/" to a directory where you can put all the files *.sm1 in lib directory. Do not forget to put / at the tail. If you are allowed to use /usr/local/lib/sm1, then you do not need to change the value of LOAD_SM1_PATH and type in mkdir /usr/local/lib/sm1 cp lib/*.sm1 /usr/local/lib/sm1 When you try to run a file, the system will try to find it firstly in the current directory, secondly in the path defined above, and finally, the path specified by the environmental variable LOAD_SM1_PATH. Example:(csh) setenv LOAD_SM1_PATH $HOME/lib/sm1/ (bash) LOAD_SM1_PATH=$HOME/lib/sm1/ ; export LOAD_SM1_PATH January 8, 1994. Revised March 15, 1997, November 2, 1998. Nobuki Takayama, Department of Mathematics, Kobe university, kan@math.kobe-u.ac.jp FAQ on the installation ----------------------------------------- Q. My compilation on solaris 2.x stopped with the message ./if_mach SPARC SUNOS5 as -o mach_dep.o ./sparc_mach_dep.s Couldn't execute: No such file or directory A. On Solaris 2.x machines, /usr/ccs/bin must be in your search path. If your shell is the C-shell, type in set path = ($path /usr/ccs/bin) rehash make Q. I cannot generate onlinehelp.tex There is a line ERROR(sm): .... A. kan96xx is supposed to be in the OpenXM distribution. Change directory to OpenXM/src/kxx and type in make install2. It generates files in Doc/bin. These are necessary to generate the file onlinehelp.tex ----------------------------------------- This software is compliant to the Lesser GNU General Public License except Kan/sm.c, which contains the main() function of sm1. Kan/sm.c is compliant to the BSD license without the advertisement item. See OpenXM/Copyright/Copyright.generic.