Update of the test
[scilab.git] / scilab / README_Unix
1                                    Scilab
2                                    ******
3  
4  ******************************************************************************
5  INSTALLATION GUIDE
6  ******************************************************************************
7  
8  0 - COPYRIGHT NOTICE
9  ********************
10  
11  Scilab is a free software released under the terms of the CeCILL license.
12  See the included license: "COPYING" in English
13                            "COPYING-FR" in French
14  
15  ******************************************************************************
16  
17  In the following, all the paths are relative to the Scilab directory 
18  (scilab-5.0 directory).
19  
20  I - TO INSTALL SCILAB
21  *********************
22  
23   IF YOU HAVE A SOURCE VERSION
24   ----------------------------
25   
26     This distribution has been tested on the following machines:
27     SUN Sparcstation (Solaris 5.8), HPUX workstation c8000 (HP.UX 11.11) and PC linux
28     (Mandriva 9.2,2005,2006, Fedora Core IV, Red Hat 9.0, Suse 10.0). But it should work on
29     other UNIXes.
30     
31     You need X Window (X11R4, X11R5 or X11R6), C compiler and Fortran compiler.
32     
33     1 - Configure your system by issuing the following command in the Scilab 
34         directory:
35         ./configure
36         Use  "./configure  --without-tk" if you don't have tcl/tk 8.4 or later 
37         installed (not recommended).
38  
39         This will create and/or modify a few Makefile and other files for your 
40         system.
41         You can give options to configure command, see below.
42
43     2 - Do in the Scilab directory:
44         make all
45  
46         This will compile Scilab and set everything.
47
48     Configure options:
49     ------------------
50     
51         --enable-debug: compile with "-g" option and do not optimize.
52  
53         --with-gcc: use gcc C compiler (note that the compilation options
54            have not been tested on all machines, see C below).
55  
56         --with-g77: use g77 Fortran compiler (note that the compilations
57            options have not been tested on all machines, see C below).
58            
59         --with-gfortran : use gfortran, GNU Fortran 95 compiler (note that 
60            the compilations options have not been tested on all machines,
61            see C below).
62  
63         --with-gnu: use gcc C compiler and gun Fortran compiler (g77 or gfortran)
64            (note that the compilation options have not been tested on all machines,
65            see C below).
66
67         --with-f2c: on Linux systems, use f2c Fortran compiler.
68  
69         --x-libraries=DIR: X Window library files are in DIR.
70         --x-includes=DIR: X Window include files are in DIR.
71  
72         --with-local-xaw: compile and use Athena Widgets libraries given 
73            with Scilab; configure chooses local Athena Widgets 3D library 
74            when needed (not recommended).
75
76         --without-pvm: compile without PVM library. The default is to compile
77            with PVM library. In this case the PVM interface is not built.
78        
79       If your PVM libraries and include files are in customized places, 
80       you can specify them by hand with the following arguments:
81         --with-pvm-library=DIR: PVM library files are in DIR
82         --with-pvm-include=DIR: PVM include files are in DIR
83  
84         --without-tk: compile without TCL/TK library. The default is to compile
85            with TCL/TK library. Use this option if you do not have libraries of 
86            TCL/TK 8.4 or higher installed (not recommended, in this case the 
87            TCL/TK interface is not build, Scilab help browser, scipad edidor 
88            graphic editor, ... will not be available).
89
90       If your TCL/TK libraries and include files are in customized places, 
91       or if you have several versions of TCL/TK installed you can specify them 
92       by hand with all the following arguments:
93         --with-tcl-library=DIR: Tcl library files are in DIR
94         --with-tcl-include=DIR: Tcl include files are in DIR
95         --with-tk-library=DIR: Tk library files are in DIR
96         --with-tk-include=DIR: Tk include files are in DIR
97         
98         -without-ocaml : do not compile with ocaml.
99         
100         --without-java : do not compile  Java interface.
101
102         --with-atlas-library=DIR: use the optimized version of BLAS (ATLAS)
103
104         --prefix=DIR: scilab will install itself in DIR/scilab-4.0
105            and create 3 symlinks in DIR/bin
106         By default prefix=/usr
107         
108       If you already have PVM installed, you should set PVM_ROOT before
109       running configure. Usually, PVM_ROOT=/usr/local/lib/pvm
110
111       On FreeBSD, you should use the scilab port in /usr/ports/math/scilab
112       If you wish to build scilab by hand you should follow the following
113       rules (with PREFIX=/usr/local):
114         * If PVM is not already installed you should use --without-pvm.
115         * If PVM is installed you must set the PVM library and include
116         directories accordingly. Usually: --with-pvm-library=$PREFIX/lib and
117         --with-pvm-include=$PREFIX/include
118         * If you wish to use Tk (--with-tk), you must set the tcl/tk library
119         and include directories accordingly. Usually:
120         --with-tk-library=$PREFIX/lib
121         --with-tk-include=$PREFIX/include
122         --with-tcl-library=$PREFIX/lib
123         --with-tcl-include=$PREFIX/include
124         * You should set the CFLAGS variable before running configure to set
125         specific compilation options. Usually: CFLAGS="-O -pipe"
126         * You should set the correct prefix. Usually: --prefix=$PREFIX
127
128       On NetBSD, you should use the scilab package in /usr/pkgsrc/math/scilab
129       If you wish to build scilab by hand you should follow the following
130       rules (with PREFIX=/usr/local):
131          * If PVM is not already installed you should use --without-pvm.
132          * If PVM is installed you must set the PVM library and include
133          directories accordingly. Usually: --with-pvm-library=$PREFIX/lib and
134          --with-pvm-include=$PREFIX/include
135          * If you wish to use Tk (--with-tk), you must set the tcl/tk library
136          and include directories accordingly. Usually:
137          --with-tk-library=$PREFIX/lib
138          --with-tk-include=$PREFIX/include
139          --with-tcl-library=$PREFIX/lib
140          --with-tcl-include=$PREFIX/include
141          * You should set the CFLAGS variable before running configure to set
142          specific compilation options. Usually: CFLAGS="-O2 -pipe"
143          * You should set the correct prefix. Usually: --prefix=$PREFIX
144
145  
146   C - CHANGING THE COMPILATION OPTIONS (source version only)
147   ------------------------------------
148   
149       You may want to change the options used to compile Scilab, names of the
150       compilers, compilation options, linker options, and so on; you can easily 
151       do that.
152  
153       The main "Makefile" of Scilab includes "Makefile.incl" and
154       "config/Makefile.<machine>":
155        - "Makefile.incl" contains all the compilation options
156        - "config/Makefile.<machine>" is only used for the link of the executable 
157          "scilex" of Scilab.
158  
159       The file "Makefile.incl" is included by all the Makefiles of the 
160       distribution, so it is THE place where you can change compilation 
161       options (it is self documented).
162  
163       Note that "Makefile.incl" is automatically generated by "configure"
164       from "Makefile.incl.in", so your modifications of "Makefile.incl" are
165       discarded every time you run "configure". 
166       Users knowing the way "configure" works may want to modify directly the 
167       "configure" file.
168       
169       Even more, users knowing the way "autoconf" works may want to modify 
170       the "configure.in" file and then run "autoconf" to generate
171       the "configure" file.
172  
173   D - CUSTOMIZING YOUR SCILAB
174   ---------------------------
175   
176     1 - By default Scilab includes its own browser written in TCL/TK.
177         But it is possible to choose another one. See the section
178         "Browser choice" of "man" help to do it.
179
180     2 - If you want to recompile Scilab after modifications, execute only 
181         the "make all" command in Scilab directory (source version only).
182  
183         If you want to clean all executable, object files and libraries 
184         and then recompile Scilab, execute the following commands
185         (source version only):
186         make distclean
187         make all
188
189     3 - To print your postscript figures, the list of printers is defined
190         in the environment variable "PRINTERS" or in the beginning of 
191         the shell script "bin/scilab".
192  
193     4 - Icons for windows managers: icons for Scilab, Scilab graphics windows
194         are given in the X11_defaults subdirectory. See the README in
195         this subdirectory.
196  
197     5 - COLOR RESOURCES: if you want to change the colors of your 
198         customization you need to modify the files in the X11_defaults
199         subdirectory (essentially the Xscilab file) or to copy the same
200         color resources in your personal resource file (home directory).
201  
202  ******************************************************************************
203  II - REMARKS
204  *******************************
205  
206     0 - This binary version has been compiled with "libc.so.6" linked to 
207         "libc-2.3.X.so". So it may not work on old Linux distributions where 
208         "libc.so.6" is linked to older "libc" libraries.
209
210         A binary version for old "libc.so.6" libraries will be available soon.
211
212     1 - Note that C routines are not all ANSI.
213  
214     2 - If there is something wrong when you open the scilab window 
215         check your ".Xdefault" or ".Xresource" file.
216  
217     3 - Athena Widgets libraries libXaw.a and libXmu.a (and corresponding 
218         include files) are not systematically provided in some X11 
219         installations. If you are using X11R5 or X11R6, these libraries are 
220         provided for convenience with Scilab.
221         "configure" first tries to find existing Athena Widgets libraries.
222         If none are found and X Window release is not X11R4, it uses
223         local Athena Widgets libraries. Otherwise an error is issued.
224         You can impose the use of local Athena Widgets libraries by using
225         the option "--with-local-Xaw" with "configure".
226  
227     4 - For HP workstation, programs to be incrementally linked should
228         be compiled with the option "+z" or "+Z".
229  
230     5 - Binary versions compiled with Scilab's tcl/tk interface include TCL/TK
231         libraries in "tcl" directory.
232
233     6 - If you have any problem or suggestion to improve Scilab
234
235           http://bugzilla.scilab.org/index.cgi
236
237         or better post a message to newsgroup:
238
239           comp.soft-sys.math.scilab
240
241  ******************************************************************************
242  III - TO RUN SCILAB
243  *******************
244  
245  Run Scilab by executing "scilab" (shell script in bin).
246  
247  If the name of the directory of Scilab distribution is not the same on 
248  your machine than on the machine where Scilab was installed, copy the
249  bin/scilab script file somewhere, set its execution rights on, edit
250  it to modify the environment variable SCI definition (it should give
251  the pathname to the directory of Scilab distribution) and use this
252  modified script to start Scilab.
253  
254  ****************************************************************************** 
255  IV - DOCUMENTATION
256  ******************
257  
258  In addition to Scilab online documentation (obtained by typing "help item" or
259  "apropos keyword" or clicking on the help button), you will find 
260  compressed postscript from Web site
261  "http://www.scilab.org":
262  
263  Internals.ps.gz, Internals.pdf: Scilab's internals
264  Intro.ps.gz, Intro.pdf: Introduction to Scilab
265  Lmi.ps.gz, Lmi.pdf: Linear Matrix Inequalities Optimization Toolbox
266  Manual.ps.gz, Manual.pdf: On line Manual
267  Metanet.ps.gz, Metanet.pdf: Metanet User's Guide and Tutorial
268  Scicos.ps.gz, Scicos.pdf: Scicos: a Dynamic System Builder and Simulator 
269  Signal.ps.gz, Signal.pdf: Signal Processing Toolbox
270  Intersci.ps.gz, Intersci.pdf: Interfacing Tool
271
272  Note that these documents are not uptodate.
273  
274  ******************************************************************************
275  V - SOME IMPORTANT FILES AND DIRECTORIES
276  ****************************************
277  
278  scilab.start     : startup file for Scilab instructions in this file
279                     are executed when Scilab is executed. Note that
280                     you can also have your own startup file "SCIHOME/.scilab"
281                     or "SCIHOME/scilab.ini".
282  
283  configure.in     : file used by "autoconf" to generate "configure".
284  
285  configure        : file used to configure Scilab's unix versions.
286  
287  Makefile.incl.in : file used by configure to generate Makefile.incl.
288  
289  Makefile.incl    : file included by all Makefile's. It is automatically 
290                     generated by configure.
291  
292  Path.incl        : contains the scilab directory pathname. It is included by
293                     scripts/Makefile. This file is automatically generated by
294                     configure.
295  
296  Version.incl     : contains the scilab version. It is used by a few Makefile.
297  
298  Makefile.in      : file used by configure to generate Makefile.
299  
300  Makefile         : the main Makefile to make Scilab. It is automatically 
301                     generated by configure.
302  
303  config/          : directory used by configure and by the main Makefile
304  
305                     Makefile.<host>: Makefile included by main Makefile. 
306                     It depends on the host and is used to created the 
307                     executable bin/scilex.
308                     
309                     configuration  : summarizes the configuration flags
310                                   computed by configure
311  
312  demos/           : demos directory. Some of the demos can be executed by 
313                     clicking on the "demos" button.
314  
315  examples/        : examples of dynamic links and interface code.
316  
317  macros/          : functions directory: this directory is divided into 
318                     subdirectories corresponding to specific topics
319                     (control, polynomials,...). Each subdirectory contains 
320                     the source code of the macros (files *.sci). 
321  
322  
323  libs/            : directory of libraries: archives of object files needed 
324                     to link Scilab.
325  
326  routines/        : directory of fortran or C routines. Divided into 
327                     subdirectories (see below).
328  
329  man/             : files for online help
330  
331  util/            : useful routines and ASCII files to manage Scilab.
332  
333  bin/             : executable code and scripts.
334                       
335                       scilab  : shell-script to call Scilab and miscellaneous 
336                                 tools. execute scilab -help scilab for help.
337                       scilex  : executable code of Scilab.
338                       scilink : shell script called by scilab -link.
339                       intersci: generator of interface program between Scilab
340                                 and routines.
341  
342  intersci/        : Generator of interface program between Scilab and routines.
343  
344  maple/           : Maple code to link Maple with Scilab.
345  
346  pvm3/            : PVM   for Scilab.
347  
348  tcl/             : TCL/TK for Scilab.
349  
350  ******************************************************************************
351  THAT'S ALL FOLKS
352  ******************************************************************************