source: git/README @ fec53d

fieker-DuValspielwiese
Last change on this file since fec53d was b1dfaf, checked in by Frank Seelisch <seelisch@…>, 14 years ago
patch from Kai (checked for problems under Windows OS: no problems) git-svn-id: file:///usr/local/Singular/svn/trunk@13210 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 6.7 KB
Line 
1How to compile SINGULAR from sources
2************************************
3
4SINGULAR is a Computer Algebra system for polynomial computations with
5special emphasize on the needs of commutative algebra, algebraic
6geometry, singularity theory and polynomial system solving. For a more
7detailed overview of SINGULAR, see
8     `http://www.singular.uni-kl.de/Overview/'
9
10So far, there are only versions for Linux, HPUX, SunOS, IRIX, AIX,
11FreeBSD 4.x/5.x, MacOS X, and Windows 95/98/NT/2K/XP.
12
13Version 2-0-2 was the last version for MacOS 9.
14
15The Windows version also runs on Windows Vista, provided
16that "rebase all" was done after installing Cygwin.
17
18Note for Singular-3-0-x:
19Currently, there are only only "complete" archives: Singular-3-0-x-x.tar.gz
20which contain all needed files.
21
22Compiling SINGULAR for a Unix platform
23======================================
24
25Make sure that you have approximately 120 MByte of free disk space and
26follow these steps.
27(the "optional" for bison applies to version 3-0-3-1 and later)
28
29  1. Make sure that you have the following software (the list may be
30     incomplete):
31       1.   general unix utilities: grep, test, sed, cp, mv, gzip,
32          uudecode, ...
33
34       2.   autoconf
35
36       3.   gnu-make
37
38       4.   gcc, g++ (version 2.95.3 preferred,   but gcc version 2.7.2
39          to 2.95.4, egcs 1.0.3 and 1.1.2 should work,   gcc 2.96 does
40          not work)
41          gcc 3.0 does not work, gcc 3.1.x, gcc 3.2.x, gcc 3.3.x/3.4.x should
42          gcc 4.x: beginnig with Singular-3-0-0-4, for some architectures
43                   beginning with Singular-3-0-2: for all architectures
44
45       5.  optional: if you want to change Singular/grammar.y:
46            bison (version >= 1.2.2)
47            (bison (GNU Bison) 1.75 seems not to work)
48            (version 1.75 is supported in Singular 2-0-4a and newer)
49           
50            Remark:
51              bison 1.875 on solaris produces code which gcc does not accept
52
53       6.    optional: if you want to change Singular/scanner.l
54             or modules/modgen/scanner.l:
55             flex (version >=2.4, <=2.5.4)
56
57       7.   perl (version >=5)
58
59       8.   library gmp (version >=3.1.1)
60            (version 4.x.x is supported in Singular 2-0-4 and newer)
61
62       9.   library libncurses or libtermcap or libcurses
63
64      10.   (optional) library libreadline
65            (required on linux glibc systems)
66
67      11.   (optional, required to build the documentation:)
68          latex2html, tex, texi2html, texinfo
69          (your latex2html should produce gif files, not png files)
70
71  2. (optional, required for MP:)
72     make sure that you can log in to your computer via rsh/remsh or
73     ssh without a password (check .rhosts/.shosts);
74     (in versions before 3-0-0: the
75     configure script stops while checking this: if you cannot fix it,
76     simply kill the rsh/ssh-processes - the configure will then
77     disable this particulare feature)
78     The following should work:
79     rsh localhost uname
80     ssh localhost uname
81     rsh `hostname` uname
82     ssh `hostname` uname
83
84  3. You need to download all of the .tar.gz-files
85     (since 3-0-0 we have only one large source .tar.gz-file)
86
87  4. create a new working directory
88
89  5. unpack all packages into that working directory
90
91  6. (optional, for porting to a unknown machine:) fix ./singuname.sh
92     not to report something unknown, but to recognize the machine
93
94  7. run ./configure
95     (try ./configure -help, ./omalloc/configure -help, ./MP/configure
96     -help, ./factory/configure -help, ./Singular/configure -help for a
97     list of all options of configure)
98
99     BEWARE: some of the option are for testing only,
100     they will usually not work in general:
101     --with-Plural,--with-plural (you need a Singuilar version > 2.1.2 for this)
102       (standard since  version 3-0-0)
103     --with-sgroup (you need the sgroup programs for this)
104     --with-smallgmp (not maintained), removed in 3-0-0
105     --with-namespaces (you need a Singuilar version > 2.1.x for this)
106       (standard since  version 3-0-0)
107     
108
109  8. make install (resp. gmake install - the make program must be
110     GNU-Make) the make process will (hopefully) build:
111       1.   omalloc: the memry management routines (required)
112
113       2.   MP: Multi-Protocoll (optional)
114
115       3.   NTL (optional, but strongly recommended)
116
117       4.   factory and libfac
118            (optional, but strongly recommended:
119            some functionality will be lost if they are missing)
120
121       5.   kernel, Singular (Kernel, required)
122
123       6.   only for share-dist: doc
124            (only possible, if all optional packages are included)
125
126       7.   only for share-dist: emacs (only possible, if doc was build)
127
128       8.   IntegerProgramming
129
130  9. if you want to make any change in the directory Singular, run make
131     depend there
132
133 10. to install the resulting files at any other place in the system,
134     run
135     make bindist sharedist
136     (sharedist can only be build if doc was build sucessfully) and
137     install the resulting .tar.gz files as explained for the binary
138     distribution
139     The sharedist-result does not depend on your machine:
140     so you can also download our version of it
141
142 11. if you compiled Singular for a non-standard architecture and you
143     are willing to share your porting effort, upload the changed
144     sources and the resulting binaries to
145     `ftp://www.mathematik.uni-kl.de/pub/Incoming' and send us an email
146     about it (Singular@mathematik.uni-kl.de)
147
148 12. bug-fixes or other improvements to the source code are welcome
149
150Notes for specific platforms
151============================
152
153   - Windows (Cygwin):
154     ./configure -with-malloc=system
155     Windows Vista:
156     run         
157       rebaseall
158     before trying anything else
159
160   - MacOS X:
161     you need a file values.h where MP can find it (we copied one from
162     Linux)
163     ./configure -with-malloc=system
164
165   - FreeBSD 4.x/5.x:
166     you need a file values.h where MP can find it (we copied one from
167     Linux)
168     ./configure -with-malloc=system
169
170   - Solaris with CC/cc
171     - you need to set CONFIG_SHELL to /bin/bash
172      (/bin/sh misses some substitutions in the generated Makefiles)
173     - set CC = "cc -xarch=v9"
174          CXX = "CC -xarch=v9"
175          CFLAGS          = -O
176          CXXFLAGS        = -O2
177     - configure with
178      ./configure  --without-dynamic-kernel --without-MP
179     
180
181Compiling SINGULAR for a Non-Unix platform
182==========================================
183
184This is a non-trivial task. Please contact us directly.
185(`mailto:Singular@mathematik.uni-kl.de')
186
187GOOD LUCK and ENJOY!  Your SINGULAR team.
188
189
190Compiling SINGULAR with cmake
191=============================
192
193compiling SINGULAR with cmake is currently experimental and
194under development.
195Use it at your own risk! Parents are liable for their children!
Note: See TracBrowser for help on using the repository browser.