getfem-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Getfem-commits] (no subject)


From: Yves Renard
Subject: [Getfem-commits] (no subject)
Date: Wed, 14 Jun 2017 08:35:27 -0400 (EDT)

branch: master
commit 8804383b24f26691a95bff4ccc73e425efd6b014
Author: Yves Renard <address@hidden>
Date:   Wed Jun 14 14:21:37 2017 +0200

    reformating install documentation
---
 doc/sphinx/source/.templates/download.html     |  73 +++++++-
 doc/sphinx/source/.templates/indexcontent.html |   6 +-
 doc/sphinx/source/contents.rst                 |   5 +-
 doc/sphinx/source/install/install_linux.rst    | 226 ++++++++++++++++++++++
 doc/sphinx/source/install/install_mac.rst      | 250 +++++++++++++++++++++++++
 doc/sphinx/source/install/install_windows.rst  |  24 +++
 doc/sphinx/source/matlab/index.rst             |   1 -
 doc/sphinx/source/matlab/install.rst           |  58 +-----
 doc/sphinx/source/matlab/install_on_mac.rst    | 111 -----------
 doc/sphinx/source/python/install.rst           | 109 +----------
 doc/sphinx/source/scilab/install.rst           |  41 +---
 doc/sphinx/source/tutorial/install.rst         |   4 +-
 doc/sphinx/source/userdoc/install.rst          | 121 +-----------
 13 files changed, 581 insertions(+), 448 deletions(-)

diff --git a/doc/sphinx/source/.templates/download.html 
b/doc/sphinx/source/.templates/download.html
index 8715225..7113978 100644
--- a/doc/sphinx/source/.templates/download.html
+++ b/doc/sphinx/source/.templates/download.html
@@ -35,18 +35,72 @@ combinations of OS and compilers. The last stable version 
has been tested on the
 configurations:<p>
 
 <ul>
-  <li>Linux with g++ 4.8.x</li>
-  <li>MacOS X (with the python interface)</li>
+  <li>Linux with g++ (versions 4.8 to 7.1) </li>
+  <li>MacOS X (with the python and Matlab interfaces)</li>
   <li>Windows with <a href="http://www.mingw.org";>MinGW</a> and
   <a href="http://www.mingw.org/wiki/msys";>MSys</a>
   ({{ project }} only -- see specific notes for the matlab interface)</li>
 </ul>
 
-<p>Concerning the compilation on MacOS X, the simplest seems to be to install 
the package qhull and the sequential version of Mumps with the package manager 
Homebrew. For the python interface, python 2 should be installed with numpy and 
scipy packages (you can use pip to install them). The compilation of the python 
interface may fail. Go to interface/src/python directory and try to add the 
right libraries to build the _getfem.so dynamic library.
-</p>
+<h1>Install {{ project }} {{ release }} on different plateforms </h1>
 
-<p>You can find some help on how to build the Matlab interface on <a 
href="http://windhoff.net/wiki/how_to/build_getfem_matlab_toolbox_on_windows_xp";>Windows
 XP</a> and <a 
href="http://windhoff.net/wiki/how_to/build_getfem_matlab_toolbox_on_ubuntu_linux";>Ubuntu</a>
 on the page of Mirko Windhoff.
-</p>
+<h2>Installation from sources</h2>
+
+Since standard GNU tools are used, the installation of the {{ project }} 
library is somewhat standard. From a general viewpoint, the installation from 
sources will require the following ingredients for any platform:
+
+<ul>
+  <li> A decently recent C/C++ compiler accepting C++ 11 standard
+       (gcc/g++ >= 4.8 for instance).  </li>
+  <li> If you want to build binaries from git to get the latest changes,
+    improvements, bugfixes, new bugs, etc. It requires a git client,
+    automake, and libtool (otherwise, use the lastest stable package). </li>
+  <li> By default, the Python Getfem interface is built. It requires the python
+    development files (Python.h etc.) to be available (package
+    ``python-all-dev`` in debian distribution), and also the Numpy and Scipy
+    packages to be installed (package ``python-numpy`` and ``python-scipy``
+    in debian distribution). In case of troubles with a non-gnu compiler,
+    gcc/g++ (>= 4.8) should be a safe solution (package ``build-essential``
+    in debian distribution). If you do not want to build the python interface,
+    use the configure option `./configure --disable-python` </li>
+  <li> If you want to build the Matlab interface, it requires a recent Matlab
+    version installed on your system and the associated mex compiler
+    correctly configured. </li>
+  <li> If you want to build the Scilab interface, it requires a recent Scilab
+    version installed on your system.  </li>
+  <li> If you want mesh generation and fictitious domain facilities
+    (such as Xfem),
+    it requires the package qhull installed on your system
+    (package ``libqhull-dev`` in debian distribution). </li>
+  <li> If you want to use MUMPS linear sparse solver instead of SUPERLU, you
+  need to  install the sequential version of MUMPS on your system
+  (or the parallel one if you intend to use the parallel version of {{ project 
}}).  </li>
+</ul>
+
+Depending on the plateform, find some specific help here for the installation 
on <a class="biglink" href="{{ pathto("install/install_linux") }}">Linux</a>, 
<a class="biglink" href="{{ pathto("install/install_mac") }}">MacOS X</a>, or 
<a class="biglink" href="{{ pathto("install/install_windows") }}">Windows</a>.
+
+
+<h2>Installation from pre-compiled packages</h2>
+
+
+
+<h3> On a Debian/Ubuntu system </h3>
+
+GetFEM++ packages are available in the official repositories of Debian
+and Ubuntu distributions.
+
+Information about the GetFEM++ versions available in different Debian
+releases can be found e.g. at
+
+<a href="https://packages.debian.org/source/sid/getfem++";> 
https://packages.debian.org/source/sid/getfem++</a>
+
+and with respect to different Ubuntu releases at
+
+<a href="https://launchpad.net/ubuntu/+source/getfem++";> 
https://launchpad.net/ubuntu/+source/getfem++</a>
+
+GetFEM++ including its python interface can be installed from a terminal
+by executing <b>aptitude update</b> and <b>aptitude install 
python-getfem++</b>.
+
+<h3> On Windows </h3>
 
 <p>Installer of the Scilab interface for 32bits Windows and Scilab 5.3 
provided by Yann Colette (2011/11/18):
       <a 
href="http://download-mirror.savannah.gnu.org/releases/getfem/misc/sci_getfem-rev2914-scilab-5.3-setup.exe";>sci_getfem-rev2914-scilab-5.3-setup.exe</a>.</p>
@@ -61,14 +115,15 @@ configurations:<p>
 <p>A binary for the matlab-interface for matlab 2009 on Windows XP(2010/04/08):
       <a 
href="http://download-mirror.savannah.gnu.org/releases/getfem/misc/getfem-matlab-4.0_R2009_win32.tar.gz";>getfem-matlab-4.0_R2009_win32.tar.gz</a>.</p>
 
-<p>A binary for the matlab-interface for matlab-2009b on MAC OSX (2010/03/10):
-      <a 
href="http://download-mirror.savannah.gnu.org/releases/getfem/misc/getfem-4.0.0-matlab-toolbox-MACOSX-i386.tar.gz";>getfem-4.0.0-matlab-toolbox-MACOSX-i386.tar.gz</a>.</p>
+
 
 <p>A binary for the matlab-interface for matlab-R14 on Windows XP(2006/04/18):
       <a 
href="http://download-mirror.savannah.gnu.org/releases/getfem/misc/getfem-matlab-2.0_R14_win32.zip";>getfem-matlab-2.0_R14_win32.zip</a>
 (and some <a 
href="http://download-mirror.savannah.gnu.org/releases/getfem/misc/getfem-matlab-2.0_R14_win32.README.txt";>notes</a>).</p>
 
+<h3> On MacOS X </h3>
 
-
+<p>A binary for the matlab-interface for matlab-2009b on MacOS X (2010/03/10):
+      <a 
href="http://download-mirror.savannah.gnu.org/releases/getfem/misc/getfem-4.0.0-matlab-toolbox-MACOSX-i386.tar.gz";>getfem-4.0.0-matlab-toolbox-MACOSX-i386.tar.gz</a>.</p>
 {% endif %}
 
 <h1>Download {{ project }} {{ release }} Documentation</h1>
diff --git a/doc/sphinx/source/.templates/indexcontent.html 
b/doc/sphinx/source/.templates/indexcontent.html
index ebc12e9..2c734ba 100644
--- a/doc/sphinx/source/.templates/indexcontent.html
+++ b/doc/sphinx/source/.templates/indexcontent.html
@@ -32,7 +32,7 @@
          <span class="linkdescr">keep this under your pillow</span></p>
       <p class="biglink">
          <a class="biglink" href="{{ pathto("project/index") }}">Contributor's 
guide</a><br/>
-         <span class="linkdescr">Description of the project</span></p>
+         <span class="linkdescr">Description of the project and how to 
contribute</span></p>
     </td><td width="50%">
       <p class="biglink">
          <a class="biglink" href="{{ pathto("python/index") }}">Python 
Interface</a><br/>
@@ -50,8 +50,8 @@
          <a class="biglink" href="{{ pathto("gmm") }}">Gmm++ template matrix 
library</a><br/>
          <span class="linkdescr">What is Gmm++?</span></p>
       <p class="biglink">
-         <a class="biglink" href="{{ pathto("download") }}">Download</a><br/>
-         <span class="linkdescr">Download {{ project }} </span></p>
+         <a class="biglink" href="{{ pathto("download") 
}}">Download/Install</a><br/>
+         <span class="linkdescr">Download and install {{ project }} </span></p>
     </td></tr>
   </table>
 
diff --git a/doc/sphinx/source/contents.rst b/doc/sphinx/source/contents.rst
index b7d74ba..8c538c3 100644
--- a/doc/sphinx/source/contents.rst
+++ b/doc/sphinx/source/contents.rst
@@ -12,10 +12,13 @@
    gmm/index.rst
 
    matlab/index.rst
-   matlab/install_on_mac.rst
    python/index.rst
    scilab/index.rst
 
+   install/install_linux.rst
+   install/install_mac.rst
+   install/install_windows.rst
+
    whatsnew/index.rst
    documenting/index.rst
    glossary.rst
diff --git a/doc/sphinx/source/install/install_linux.rst 
b/doc/sphinx/source/install/install_linux.rst
new file mode 100644
index 0000000..069de9b
--- /dev/null
+++ b/doc/sphinx/source/install/install_linux.rst
@@ -0,0 +1,226 @@
+.. $Id$
+
+.. include:: ../replaces.txt
+
+.. highlightlang:: c++
+
+.. _ud-install-linux:
+
+How to install from sources on Linux
+====================================
+
+See `download and install <../download.html>`_ page for general requirements 
and the download of the last stable version of |gf|.
+
+
+
+Download sources
+----------------
+
+There are two ways to get |gf|, either as a compressed package for the stable
+release (file getfem-|version|.tar.gz downloadable on the page `download and 
install <../download.html>`_)  or via anonymous git access (current unstable 
version under development).
+
+You can get the last stable version directly with
+
+ * download package:
+
+     $ wget 
http://download-mirror.savannah.gnu.org/releases/getfem/stable/getfem-|version|.tar.gz
+
+ * unpack:
+
+     $ tar xzf getfem-|version|.tar.gz
+
+ * and go to the root directory of |gf|:
+
+     $ cd getfem-|version|/
+
+The current git version is:
+
+* checkout over GIT protocol::
+
+     $ git clone https://git.savannah.nongnu.org/git/getfem.git
+
+* go to the root directory of |gf|::
+
+     $ cd getfem
+
+* and run ``autogen.sh`` script (you need m4, automake and libtool) ::
+
+     $ bash autogen.sh
+
+
+Compiling
+----------
+
+Configure with::
+
+  $ ./configure
+
+then start the compilation with::
+
+  $ make
+
+and finally install with::
+
+  $ make install
+
+You can find some additional help on how to build the Matlab interface on 
Ubuntu on the page of `Mirko Windhoff 
<http://windhoff.net/wiki/how_to/build_getfem_matlab_toolbox_on_ubuntu_linux>`_.
+
+
+
+Configure Options
+^^^^^^^^^^^^^^^^^
+
+* If you want to use a different compiler than the one chosen
+  automatically by the ``./configure`` script, just specify its
+  name on the command line::
+
+    $ ./configure CXX=mycompiler
+
+* If you want to build one of the interfaces, use::
+
+    $ ./configure ``--enable-python``
+    $ ./configure ``--enable-scilab``
+    $ ./configure ``--enable-matlab``
+
+  depending on the interface you want to build. Note that the python interface
+  is build by default.
+
+* If you want to use a specific **BLAS** library, you may have to
+  supply the necessary link flags and libs to the configure script
+  with::
+
+    $ ./configure BLAS_LIBS="-L/path/to/lib -lfoo -lbar ....etc"
+
+  for example::
+
+    $ ./configure BLAS_LIBS="-L/usr/lib/sse2/atlas -lblas"
+
+* If you want to set the prefix directory where to install the library
+  you can use the ``--prefix`` option (the default prefix directory is
+  ``/usr/local``)::
+
+    $ ./configure --prefix=my_dest_dir
+
+
+Note that there are other options to the configure script. A
+``./configure --help`` will list them.
+
+
+.. warning::
+
+     * On linux/x86_64 platforms, a mandatory option when building |gf|
+       (and any static library linked to them) is the ``--with-pic``
+       option of their ``./configure`` script.
+
+
+
+Scilab interface
+^^^^^^^^^^^^^^^^
+
+The installation of the |sci| |gf| toolbox can be somewhat tricky, since it 
combines a C++ compiler, libraries and |sci| interaction. In case of troubles 
with a
+non-GNU compiler, gcc/g++ (>= 4.8) should be a safe solution.
+
+
+.. caution::
+
+   * The minimal |sci| release is the 5.2.2.
+
+   * you should have built the |gf| static library (i.e. do not use 
``./configure
+     --disable-static`` when building |gf|). On linux/x86_64 platforms, a
+     mandatory option when building |gf| and |gfi| toolbox (and any static 
library linked
+     to them) is the ``--with-pic`` option of their ``./configure`` script.
+
+   * you should have use the ``--enable-scilab`` option to configure the |gf| 
sources (i.e. ``./configure --enable-scilab`` ...)
+
+You may also use ``--with-scilab-toolbox-dir=toolbox_dir`` to change the 
default toolbox installation directory (``gfdest_dir/getfem_toolbox``). Use 
``./configure --help`` for more options.
+
+
+With this, since the Scilab interface is contained into the |gf| sources (in 
the directory interface/src) you can compile both the |gf| library and the 
Scilab interface by ::
+
+  make
+
+Optionally, you can install it with ::
+
+  make install
+
+If you want to use a different compiler than the one chosen automatically by 
the ``./configure`` script, just specify its name on the command line: 
``./configure CXX=mycompiler``.
+
+
+Once getfem is compiled:
+
+  - Go to the scilab getfem++ interface install directory 
(interface/src/scilab if the installation is not done)
+ 
+  - launch scilab
+
+  - load the getfem++ toolbox with:
+    ``exec loader.sce;``
+
+  - You can try to launch a demo with:
+    ``cd demos;``
+    ``exec demo_static_contact.sce;``
+
+
+Matlab interface
+^^^^^^^^^^^^^^^^
+
+The installation of the |gfi| toolbox can be somewhat tricky, since it 
combines a
+C++ compiler, libraries and |Mlab| interaction... In case of troubles with a
+non-GNU compiler, gcc/g++ (>= 4.8) should be a safe solution.
+
+
+.. caution::
+
+   * you should have built the |gf| static library (i.e. do not use 
``./configure
+     --disable-static`` when building |gf|). On linux/x86_64 platforms, a
+     mandatory option when building |gf| and |gfi| (and any static library 
linked
+     to them) is the ``--with-pic`` option of their ``./configure`` script.
+
+   * you should have use the --enable-matlab option to configure the |gf| 
sources (i.e. ./configure --enable-matlab ...)
+
+You may also use ``--with-matlab-toolbox-dir=toolbox_dir`` to change the 
default toolbox installation directory (``gfdest_dir/getfem_toolbox``). Use 
``./configure --help`` for more options.
+
+
+With this, since the Matlab interface is contained into the |gf| sources (in 
the directory interface/src) you can compile both the |gf| library and the 
Matlab interface by ::
+
+  make
+
+An optional step is ``make check`` in order to check the matlab interface (this
+sets some environment variables and runs the ``check_all.m`` script which is 
the ``tests/matlab`` directory of the distribution) and install it (the 
libraries
+will be copied in ``gfdest_dir/lib``, while the MEX-File and M-Files will be
+copied in ``toolbox_dir``)::
+
+  make install
+
+If you want to use a different compiler than the one chosen automatically by 
the ``./configure`` script, just specify its name on the command line: 
``./configure CXX=mycompiler``.
+
+When the library is installed, you may have to set the ``LD_LIBRARY_PATH``
+environment variable to the directory containing the ``libgetfem.so`` and
+``libgetfemint.so``, which is ``gfdest_dir/lib``::
+
+  export LD_LIBRARY_PATH=gfdest_dir/lib # if you use bash
+
+The last step is to add the path to the toolbox in the matlab path:
+
+* you can set the environment variable ``MATLABPATH`` to ``toolbox_dir``
+  (``export MATLABPATH=toolbox_dir`` for example).
+* you can put ``addpath('toolbox_dir')`` to your ``$HOME/matlab/startup.m``
+
+A very classical problem at this step is the incompatibility of the C and C++ 
libraries used by Matlab. Matlab is distributed with its own libc and libstdc++ 
libraries. An error message of the following type occurs when one tries to use 
a command of the interface::
+
+  /usr/local/matlab14-SP3/bin/glnxa64/../../sys/os/??/libgcc_s.so.1:
+  version `GCC_?.?' not found (required by .../gf_matlab.mex??).
+
+In order to fix this problem one has to enforce Matlab to load the C and C++ 
libraries of the system. There is two possibilities to do this. The most 
radical is to delete the C and C++ libraries distributed along with Matlab (if 
you have administrator privileges ...!) for instance with::
+
+  mv /usr/local/matlab14-SP3/sys/os/??/libgcc_s.so.1 libgcc_s.so.1_old
+  mv /usr/local/matlab14-SP3/sys/os/??/libstdc++_s.so.6 libstdc++_s.so.6_old
+  mv /usr/local/matlab14-SP3/sys/os/??/libgfortran.so.3 libgfortran.so.3_old
+
+The second possibility is to set the variable LDPRELOAD before launching 
Matlab for instance with (depending on the system)::
+
+  LD_PRELOAD=/usr/lib/libgcc_s.so:/usr/lib/libstdc++.so.6 matlab
+
+More specific instructions can be found in the ``README*`` files of the
+distribution.
+
+A few precompiled versions of the Matlab interface are available on the 
`download and install <../download.html>`_ page of |gf|.
diff --git a/doc/sphinx/source/install/install_mac.rst 
b/doc/sphinx/source/install/install_mac.rst
new file mode 100644
index 0000000..17b3f3d
--- /dev/null
+++ b/doc/sphinx/source/install/install_mac.rst
@@ -0,0 +1,250 @@
+.. $Id$
+
+.. include:: ../replaces.txt
+
+.. highlightlang:: c++
+
+.. _ud-install-mac:
+
+How to install from sources on MacOS X
+======================================
+
+See `download and install <../download.html>`_ page for general requirements 
and the download of the last stable version of |gf|.
+
+First, verify that you have installed the following components on your system:
+
+  - Xcode
+  - Xquartz
+  - Homebrew
+
+(Xquartz is not strictly necessary but more confortable).
+
+Then execute on a console (if not already done),
+
+   $ brew tap homebrew/science
+
+Then, if you download the current git version
+
+   $ brew install m4
+
+   $ brew install automake
+
+   $ brew install libtool
+
+For the sequential mumps, 
+
+   $ brew options mumps
+
+   $ brew install mumps --without-mpi
+
+For the parallel one, just forget --without-mpi and install also mpi and 
metis. 
+
+For Qhull
+
+   $ brew install qhull
+
+For Python
+
+   $ pip install numpy
+
+   $ pip install scipy
+
+   $ pip install matplotlib
+
+
+Download sources
+----------------
+
+There are two ways to get |gf|, either as a compressed package for the stable
+release (file getfem-|version|.tar.gz downloadable on the page `download and 
install <../download.html>`_)  or via anonymous git access (current unstable 
version under development).
+
+You can get the last stable version directly with
+
+ * download package:
+
+     $ curl -# 
"http://download-mirror.savannah.gnu.org/releases/getfem/stable/getfem-|version|.tar.gz"
 -o "getfem-|version|.tar.gz"
+
+ * unpack:
+
+     $ tar xzf getfem-|version|.tar.gz
+
+ * and go to the root directory of |gf|:
+
+     $ cd getfem-|version|/
+
+The current git version is:
+
+* checkout over GIT protocol::
+
+    $ git clone https://git.savannah.nongnu.org/git/getfem.git
+
+* go to the root directory of |gf|::
+
+    $ cd getfem
+
+* and run ``autogen.sh`` script (you need m4, automake and libtool) ::
+
+     $ bash autogen.sh
+
+
+Compiling
+----------
+
+Configure with::
+
+  $ ./configure
+
+then start the compilation with::
+
+  $ make
+
+and finally install with::
+
+  $ make install
+
+Configure Options
+^^^^^^^^^^^^^^^^^
+
+* If you want to use a different compiler than the one chosen
+  automatically by the ``./configure`` script, just specify its
+  name on the command line::
+
+    $ ./configure CXX=mycompiler
+
+* If you want to build one of the interfaces, use::
+
+    $ ./configure ``--enable-python``
+    $ ./configure ``--enable-scilab``
+    $ ./configure ``--enable-matlab``
+
+  depending on the interface you want to build. Note that the python interface
+  is build by default.
+
+* If you want to use a specific **BLAS** library, you may have to
+  supply the necessary link flags and libs to the configure script
+  with::
+
+    $ ./configure BLAS_LIBS="-L/path/to/lib -lfoo -lbar ....etc"
+
+  for example::
+
+    $ ./configure BLAS_LIBS="-L/usr/lib/sse2/atlas -lblas"
+
+* If you want to set the prefix directory where to install the library
+  you can use the ``--prefix`` option (the default prefix directory is
+  ``/usr/local``)::
+
+    $ ./configure --prefix=my_dest_dir
+
+Note that there are other options to the configure script. A
+``./configure --help`` will list them.
+
+
+
+Matlab interface
+^^^^^^^^^^^^^^^^
+
+The compilation of the matlab interface (with the ``--enable-matlab`` option 
of the ``configure`` script) may fail due to a bad configuration of the Matlab 
compiler `mex`.
+
+First, you need ``matlab`` and ``mex`` commands accessible from your shell 
prompt. If not, add ``Applications/MATLAB_RXXXX.app/bin`` on your path (for 
instance with ``export PATH=$PATH:Applications/MATLAB_RXXXX.app/bin`` if your 
shell is ``bash`` and for ``XXXX`` your Matlab installed version. 
Alternatively, you can make symbolic links to ``matlab`` and ``mex`` executable 
in ``/usr/local/bin`` thanks to the command ``sudo ln -s 
Applications/MATLAB_RXXXX.app/bin/matlab matlab`` and ``sudo [...]
+
+Then, you will probably have to run
+
+    $ mex -setup
+
+To produce the correct ``mexopts.sh`` file in the ``.matlab/`` directory of 
your home directory. If it still does not work, then you can try to modify the 
``.matlab/mexopts.sh`` or replace it. Some ``mexopts.sh`` specially adpated to 
macOS X/Xcode are available on the internet (See for instance here for 
`MATLAB_R2015 <https://gist.github.com/varunagrawal/811e05ee4ca0f6a9952d>`_).
+
+
+
+
+.. caution::
+
+   * you should have built the |gf| static library (i.e. do not use 
``./configure
+     --disable-static`` when building |gf|).
+
+   * you should have use the --enable-matlab option to configure the |gf| 
sources (i.e. ./configure --enable-matlab ...)
+
+You may also use ``--with-matlab-toolbox-dir=toolbox_dir`` to change the 
default toolbox installation directory (``gfdest_dir/getfem_toolbox``). Use 
``./configure --help`` for more options.
+
+
+With this, since the Matlab interface is contained into the |gf| sources (in 
the directory interface/src) you can compile both the |gf| library and the 
Matlab interface by ::
+
+  make
+
+An optional step is ``make check`` in order to check the matlab interface (this
+sets some environment variables and runs the ``check_all.m`` script which is 
the ``tests/matlab`` directory of the distribution) and install it (the 
libraries
+will be copied in ``gfdest_dir/lib``, while the MEX-File and M-Files will be
+copied in ``toolbox_dir``)::
+
+  make install
+
+If you want to use a different compiler than the one chosen automatically by 
the ``./configure`` script, just specify its name on the command line: 
``./configure CXX=mycompiler``.
+
+When the library is installed, you may have to set the ``LD_LIBRARY_PATH``
+environment variable to the directory containing the ``libgetfem.so`` and
+``libgetfemint.so``, which is ``gfdest_dir/lib``::
+
+  export LD_LIBRARY_PATH=gfdest_dir/lib # if you use bash
+
+The last step is to add the path to the toolbox in the matlab path:
+
+* you can set the environment variable ``MATLABPATH`` to ``toolbox_dir``
+  (``export MATLABPATH=toolbox_dir`` for example).
+* you can put ``addpath('toolbox_dir')`` to your ``$HOME/matlab/startup.m``
+
+You can then try to execute one of the demo program in 
``getfem_root_directory/interface/tests/matlab``.
+
+
+A few precompiled versions of the Matlab interface are available on the 
`download and install <../download.html>`_ page of |gf|.
+
+
+
+
+
+
+
+
+
+Scilab interface
+^^^^^^^^^^^^^^^^
+
+The installation of the |sci| |gf| toolbox can be somewhat tricky, since it 
combines a C++ compiler, libraries and |sci| interaction. In case of troubles 
with a
+non-GNU compiler, gcc/g++ (>= 4.8) should be a safe solution.
+
+
+.. caution::
+
+   * The minimal |sci| release is the 5.2.2.
+
+   * you should have built the |gf| static library (i.e. do not use 
``./configure
+     --disable-static`` when building |gf|).
+
+   * you should have use the ``--enable-scilab`` option to configure the |gf| 
sources (i.e. ``./configure --enable-scilab`` ...)
+
+You may also use ``--with-scilab-toolbox-dir=toolbox_dir`` to change the 
default toolbox installation directory (``gfdest_dir/getfem_toolbox``). Use 
``./configure --help`` for more options.
+
+
+With this, since the Scilab interface is contained into the |gf| sources (in 
the directory interface/src) you can compile both the |gf| library and the 
Scilab interface by ::
+
+  make
+
+Optionally, you can install it with ::
+
+  make install
+
+If you want to use a different compiler than the one chosen automatically by 
the ``./configure`` script, just specify its name on the command line: 
``./configure CXX=mycompiler``.
+
+
+Once getfem is compiled:
+
+  - Go to the scilab getfem++ interface install directory 
(interface/src/scilab if the installation is not done)
+ 
+  - launch scilab
+
+  - load the getfem++ toolbox with:
+    ``exec loader.sce;``
+
+  - You can try to launch a demo with:
+    ``cd demos;``
+    ``exec demo_static_contact.sce;``
+
diff --git a/doc/sphinx/source/install/install_windows.rst 
b/doc/sphinx/source/install/install_windows.rst
new file mode 100644
index 0000000..da3fea6
--- /dev/null
+++ b/doc/sphinx/source/install/install_windows.rst
@@ -0,0 +1,24 @@
+.. $Id$
+
+.. include:: ../replaces.txt
+
+.. highlightlang:: c++
+
+.. _ud-install-windows:
+
+How to install from sources on Windows
+======================================
+
+
+
+See the `download and install <../download.html>`_ page for general 
requirements and the download of the last stable version of |gf|.
+
+On windows, there is several ways to build |gf| library. Either with a 
commercial C++ compiler or with Mingw or Cygwin. For MSCV, some projects files 
are available on the git version inside the ``mscv`` directory.
+
+To be completed ...
+
+
+
+
+
+You can find some help on how to build the Matlab interface on Windows on the 
page of `Mirko Windhoff 
<http://windhoff.net/wiki/how_to/build_getfem_matlab_toolbox_on_windows_xp>`_.
diff --git a/doc/sphinx/source/matlab/index.rst 
b/doc/sphinx/source/matlab/index.rst
index fe04477..f3a08c1 100644
--- a/doc/sphinx/source/matlab/index.rst
+++ b/doc/sphinx/source/matlab/index.rst
@@ -12,7 +12,6 @@
 
    intro
    install
-   install_on_mac
    pre
    mlabgf
    examples
diff --git a/doc/sphinx/source/matlab/install.rst 
b/doc/sphinx/source/matlab/install.rst
index 91983aa..641a054 100644
--- a/doc/sphinx/source/matlab/install.rst
+++ b/doc/sphinx/source/matlab/install.rst
@@ -13,61 +13,5 @@ The installation of the |gfi| toolbox can be somewhat 
tricky, since it combines
 C++ compiler, libraries and |Mlab| interaction... In case of troubles with a
 non-GNU compiler, gcc/g++ (>= 4.8) should be a safe solution.
 
-.. caution::
+See the `download and install <../download.html>`_ page for the installation 
of |gf| on different plateforms.
 
-   * you should have built the |gf| static library (i.e. do not use 
``./configure
-     --disable-static`` when building |gf|). On linux/x86_64 platforms, a
-     mandatory option when building |gf| and |gfi| (and any static library 
linked
-     to them) is the ``--with-pic`` option of their ``./configure`` script.
-
-   * you should have use the --enable-matlab option to configure the |gf| 
sources (i.e. ./configure --enable-matlab ...)
-
-You may also use ``--with-matlab-toolbox-dir=toolbox_dir`` to change the 
default toolbox installation directory (``gfdest_dir/getfem_toolbox``). Use 
``./configure --help`` for more options.
-
-
-With this, since the Matlab interface is contained into the |gf| sources (in 
the directory interface/src) you can compile both the |gf| library and the 
Matlab interface by ::
-
-  make
-
-An optional step is ``make check`` in order to check the matlab interface (this
-sets some environment variables and runs the ``check_all.m`` script which is 
the ``tests/matlab`` directory of the distribution) and install it (the 
libraries
-will be copied in ``gfdest_dir/lib``, while the MEX-File and M-Files will be
-copied in ``toolbox_dir``)::
-
-  make install
-
-If you want to use a different compiler than the one chosen automatically by 
the ``./configure`` script, just specify its name on the command line: 
``./configure CXX=mycompiler``.
-
-When the library is installed, you may have to set the ``LD_LIBRARY_PATH``
-environment variable to the directory containing the ``libgetfem.so`` and
-``libgetfemint.so``, which is ``gfdest_dir/lib``::
-
-  export LD_LIBRARY_PATH=gfdest_dir/lib # if you use ksh or bash
-
-The last step is to add the path to the toolbox in the matlab path:
-
-* you can set the environment variable ``MATLABPATH`` to ``toolbox_dir``
-  (``export MATLABPATH=toolbox_dir`` for example).
-* you can put ``addpath('toolbox_dir')`` to your ``$HOME/matlab/startup.m``
-
-A very classical problem at this step is the incompatibility of the C and C++ 
libraries used by Matlab. Matlab is distributed with its own libc and libstdc++ 
libraries. An error message of the following type occurs when one tries to use 
a command of the interface::
-
-  /usr/local/matlab14-SP3/bin/glnxa64/../../sys/os/??/libgcc_s.so.1:
-  version `GCC_?.?' not found (required by .../gf_matlab.mex??).
-
-In order to fix this problem one has to enforce Matlab to load the C and C++ 
libraries of the system. There is two possibilities to do this. The most 
radical is to delete the C and C++ libraries distributed along with Matlab (if 
you have administrator privileges ...!) for instance with::
-
-  mv /usr/local/matlab14-SP3/sys/os/??/libgcc_s.so.1 libgcc_s.so.1_old
-  mv /usr/local/matlab14-SP3/sys/os/??/libstdc++_s.so.6 libstdc++_s.so.6_old
-  mv /usr/local/matlab14-SP3/sys/os/??/libgfortran.so.3 libgfortran.so.3_old
-
-The second possibility is to set the variable LDPRELOAD before launching 
Matlab for instance with (depending on the system)::
-
-  LD_PRELOAD=/usr/lib/libgcc_s.so:/usr/lib/libstdc++.so.6 matlab
-
-More specific instructions can be found in the ``README*`` files of the
-distribution.
-
-In particular, instruction for the installation on Mac OS can be found here 
:ref:`mlab-install_mac`.
-
-A few precompiled versions of the Matlab interface are available on the 
download page of |gf|.
diff --git a/doc/sphinx/source/matlab/install_on_mac.rst 
b/doc/sphinx/source/matlab/install_on_mac.rst
deleted file mode 100644
index 68421e1..0000000
--- a/doc/sphinx/source/matlab/install_on_mac.rst
+++ /dev/null
@@ -1,111 +0,0 @@
-
-.. $Id$
-
-.. include:: ../replaces.txt
-
-.. highlightlang:: bash
-
-.. _mlab-install_mac:
-
-
-Installing the matlab interface for getfem 4.0.0 on snow leopard.
-=================================================================
-
-The MATLAB version considered here is a recent one (2009b).
-
-This matlab version requires some specific flags to be used when building 
getfem. These flags are displayed when I run "mex -v"::
-
- CFLAGS = -fno-common -no-cpp-precomp -arch i386 -isysroot 
/Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5  -fexceptions
- CXXFLAGS = -fno-common -no-cpp-precomp -fexceptions -arch i386 -isysroot 
/Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5
-
-Those that are important here are the arch one (you need to build a binary for 
the same architecture than the matlab one (ppc, ppc64, i386, x86_64)). The 
-isysroot and the -mmacos-min-version are used to linked against the same 
system library versions than matlab.
-
-
-If you want to install qhull (in order to use the levelset stuff), 
-you need to install it first. This is optional::
-
- ----------------------------QHULL INSTALL (optional)
- Build qhull: You need to use the same options that are used for building 
getfem:
-
- cd qhull-2010.1/src
- make CCOPTS1="-O2 -arch i386 -isysroot /Developer/SDKs/MacOSX10.5.sdk 
-mmacosx-version-min=10.5"
-
- # Now install it into a standard location so that getfem configure will 
detect qhull
-
- sudo mkdir /usr/include/qhull/
- sudo install *.h /usr/include/qhull/
- sudo install libqhull.a /usr/lib/
- sudo mkdir /Developer/SDKs/MacOSX10.5.sdk/usr/include/qhull/
- sudo install *.h /Developer/SDKs/MacOSX10.5.sdk/usr/include/qhull/
- sudo install libqhull.a /Developer/SDKs/MacOSX10.5.sdk/usr/lib/
- ---------------------------END OF QHULL INSTALL
-
-
-Hence I will pass them to the ./configure script::
-
- ./configure --enable-matlab CXXFLAGS="-arch i386 -isysroot 
/Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5" CFLAGS="-arch i386 
-isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5" 
--with-matlab-toolbox-dir=$HOME/matlab/getfem
-
-Which should end with an encouraging::
-
- Lapack library found : -llapack
- ---------------------------------------
- Ready to build getfem
-   building MATLAB interface: YES
-   building PYTHON interface: NO (requires numpy)
- ---------------------------------------
-
-But if you look at the output of the configure script, and if you happen to 
use the same matlab version than me, you might see::
-
- checking for mex... mex
- checking for matlab path...  /Applications/MATLAB_R2009b.app
- checking for mex extension...  .mexmaci
- grep: /Applications/MATLAB_R2009b.app/extern/src/mexversion.c: No such file 
or directory
- Matlab release is : R
-
-Obviously the configure script failed to recognize the matlab version number...
-
-You now need to edit two files in order to be able to build the getfem toolbox 
without error:
-
- - Open src/getfem_interpolated_fem.cc , and replace "uint" by "unsigned" on 
line 260 and 295
-
- - open interface/src/matlab/gfm_common.h and add
-   #define MATLAB_RELEASE 2009
-   at the top of the file
-
-Now launch the compilation (I'm putting -j2 because I have a dual-core)::
-
- make -j2
-
-It will take a long time to complete (20 minutes)
-in order to install the toolbox, just create a directory for it, for example 
in ::
-
- mkdir -p $HOME/matlab/getfem
-
-and copy all files into it (the "make install" does not work, unfortunately)::
-
- cp -pr interface/src/matlab/* $HOME/matlab/getfem
-
-remove the assert.m which is useless.
-
-now launch Matlab. In order to be able to use the toolbox, add it to your 
matlab path::
-
- >> addpath('~/matlab/getfem')
-
-Test that the mex file loads correctly::
-
- >> gf_workspace('stats')
- message from [gf_workspace]:
- Workspace 0 [main -- 0 objects]
-
-
-Go to the getfem test directory for matlab::
-
- >> cd interface/tests/matlab
-
-And try the various tests::
-
- >> demo_laplacian
- >> demo_tripod
- etc..
-
-
diff --git a/doc/sphinx/source/python/install.rst 
b/doc/sphinx/source/python/install.rst
index e7142ae..6e371f0 100644
--- a/doc/sphinx/source/python/install.rst
+++ b/doc/sphinx/source/python/install.rst
@@ -5,112 +5,9 @@
 Installation
 ============
 
-For the parallel version of the interface, see also :ref:`ud-parallel`.
-
-In a Debian/Ubuntu system
--------------------------
-
-GetFEM++ packages are available in the official repositories of Debian
-and Ubuntu distributions.
-
-Information about the GetFEM++ versions available in different Debian
-releases can be found e.g. at
-
-https://packages.debian.org/source/sid/getfem++
-
-and with respect to different Ubuntu releases at
-
-https://launchpad.net/ubuntu/+source/getfem++
-
-GetFEM++ including its python interface can be installed from a terminal
-by executing ``aptitude update`` and ``aptitude install python-getfem++``.
-
-In a general unix/linux based systems
--------------------------------------
-
-Since we use standard |gnu| tools, the installation of the |py| |gf| is
-somewhat standard.
-
-Requirements
-^^^^^^^^^^^^
-
-It requires the python development files (python.h etc.) to be available
-(package `python-all-dev` in debian distribution), and also the numpy and scipy
-packages to be installed (package `python-numpy` and `python-scipy` in debian 
distribution).
-In case of troubles with a non-GNU compiler, gcc/g++ (>= 4.8) should be a
-safe solution (package `build-essential` in debian distribution).
-
-If you want mesh generation, it requires the package qhull installed on
-your system (package `libqhull-dev` in debian distribution).
-
-If you want to build binaries from svn to get the latest changes,
-improvements, bugfixes, new bugs, etc. It requires an svn client,
-automake, autoconf and libtool.
-
-If you want to use MUMPS linear sparse solver instead of SUPERLU, you need to 
install the sequential version of MUMPS (or the parallel one if you intend to 
use the parallel version of |gf|).
-
-Download sources
-^^^^^^^^^^^^^^^^
-There are two ways to get |gf|, either as a compressed package (stable
-release) or via anonymous svn access (unstable releases).
-
-The latest stable release of |gf| is getfem++-|version|\.tar.gz
-
-* download package:
-
-   wget http://getfem.org/stable/getfem++-|version|\.tar.gz
+If installing from sources, use the option `--enable-python` of the 
`configure` script.
 
-* unpack:
-
-   tar xzf getfem++-|version|\.tar.gz
-
-* and go to the root directory of getfem:
-     
-   cd getfem++-|version|
-
-The latest unstable releases is:
-
-* checkout over GIT protocol::
-
-   git clone https://git.savannah.nongnu.org/git/getfem.git
-
-* go to the root directory of getfem::
-
-   cd getfem
- 
-* and run ``autogen.sh`` script::
-
-   bash autogen.sh
-
-Compilling
-^^^^^^^^^^
-
-Configure with::
-
-  ./configure --enable-python=yes
-
-If you want to use a specific **BLAS** library, you may have to supply the
-necessary link flags and libs to the configure script, for example with::
-
-  ./configure --enable-python=yes BLAS_LIBS="-L/usr/lib/sse2/atlas -lblas"
-
-More specific instructions can be found in the README\* files of the
-distribution.
-
-.. warning::
-
-   * you should not use a different compiler than the one that was used
-     for |gf|.
-   * you should have built the |gf| static library (i.e. do not use
-     ``./configure --disable-static`` when building |gf|).
-   * On linux/x86_64 platforms, a mandatory option when building |gf| (and
-     any static library linked to them) is the ``--with-pic`` option of
-     their ``./configure`` script.
-
-Then start the compilation with::
-
-  make
+For the parallel version of the interface, see also :ref:`ud-parallel`.
 
-and finally install with::
+See the `download and install <../download.html>`_ page for the installation 
of |gf| on different plateforms.
 
-  make install
diff --git a/doc/sphinx/source/scilab/install.rst 
b/doc/sphinx/source/scilab/install.rst
index 24e543d..fb3c9bc 100644
--- a/doc/sphinx/source/scilab/install.rst
+++ b/doc/sphinx/source/scilab/install.rst
@@ -9,45 +9,10 @@
 Installation 
 ============
 
-The installation of the |sci| |gf| toolbox can be somewhat tricky, since it 
combines a
-C++ compiler, libraries and |sci| interaction. In case of troubles with a
-non-GNU compiler, gcc/g++ (>= 4.8) should be a safe solution.
+The installation of the |sci| |gf| toolbox can be somewhat tricky, since it 
combines a C++ compiler, libraries and |sci| interaction. In case of troubles 
with a
+non-GNU compiler, gcc/g++ (>= 4.8) should be a safe solution. The minimal 
|sci| release is the 5.2.2.
 
-.. caution::
 
-   * The minimal |sci| release is the 5.2.2.
 
-   * you should have built the |gf| static library (i.e. do not use 
``./configure
-     --disable-static`` when building |gf|). On linux/x86_64 platforms, a
-     mandatory option when building |gf| and |gfi| toolbox (and any static 
library linked
-     to them) is the ``--with-pic`` option of their ``./configure`` script.
-
-   * you should have use the ``--enable-scilab`` option to configure the |gf| 
sources (i.e. ``./configure --enable-scilab`` ...)
-
-You may also use ``--with-scilab-toolbox-dir=toolbox_dir`` to change the 
default toolbox installation directory (``gfdest_dir/getfem_toolbox``). Use 
``./configure --help`` for more options.
-
-
-With this, since the Scilab interface is contained into the |gf| sources (in 
the directory interface/src) you can compile both the |gf| library and the 
Scilab interface by ::
-
-  make
-
-Optionally, you can install it with ::
-
-  make install
-
-If you want to use a different compiler than the one chosen automatically by 
the ``./configure`` script, just specify its name on the command line: 
``./configure CXX=mycompiler``.
-
-
-Once getfem is compiled:
-
-  - Go to the scilab getfem++ interface install directory 
(interface/src/scilab if the installation is not done)
- 
-  - launch scilab
-
-  - load the getfem++ toolbox with:
-    ``exec loader.sce;``
-
-  - You can try to launch a demo with:
-    ``cd demos;``
-    ``exec demo_static_contact.sce;``
+See the `download and install <../download.html>`_ page for the installation 
of |gf| on different plateforms.
 
diff --git a/doc/sphinx/source/tutorial/install.rst 
b/doc/sphinx/source/tutorial/install.rst
index d3561b3..6128a90 100644
--- a/doc/sphinx/source/tutorial/install.rst
+++ b/doc/sphinx/source/tutorial/install.rst
@@ -9,7 +9,7 @@
 How to install
 ==============
 
-Since |gf| is developped on linux (Ubuntu), the installation is simpler on 
linux, especially on Debian-based distributions (Debian/Ubuntu/Mint). However, 
|gf| can be installed also on other linux distributions, on Mac os X and 
Windows. In order to compile |gf| from sources, you need a recent C++ complier 
(supporting C++-11 standard) and a recent version of python.
+Since |gf| is developped on linux (Ubuntu), the installation is simpler on 
linux, especially on Debian-based distributions (Debian/Ubuntu/Mint). However, 
|gf| can be installed also on other linux distributions, on Mac os X and 
Windows. In order to compile |gf| from sources, you need a recent C++ complier 
(supporting C++ 11 standard) and a recent version of python 2.
 
 The main dependences of |Gf| on other libraries are
 
@@ -32,4 +32,4 @@ The main dependences of |Gf| on other libraries are
 You can also install the stable release of Getfem on linux distributions using 
the corresponding package management system. 
 
 
-More specific information on how to build Getfem C++ library can be found 
:ref:`here <ud-install>`, for the Python interface :ref:`here 
<ud-install-python>`, the Scilab one :ref:`here <sci-install>` and the Matlab 
one :ref:`here <mlab-install>`.
\ No newline at end of file
+More specific information on how to build Getfem C++ library can be found on 
the `download and install <../download.html>`_ page.
diff --git a/doc/sphinx/source/userdoc/install.rst 
b/doc/sphinx/source/userdoc/install.rst
index 11fa1f3..9ed5a9d 100644
--- a/doc/sphinx/source/userdoc/install.rst
+++ b/doc/sphinx/source/userdoc/install.rst
@@ -10,123 +10,4 @@ How to install
 ==============
 
 Since we use standard |gnu| tools, the installation of the |gf| library is
-somewhat standard.
-
-Requirements
-------------
-
-* If you want to build binaries from svn to get the latest changes,
-  improvements, bugfixes, new bugs, etc. It requires an svn client,
-  automake, and libtool.
-
-* If you want to build |py| |gfi|, it requires the python
-  development files (Python.h etc.) to be available (package
-  ``python-all-dev`` in debian distribution), and also the |np| and |sp|
-  packages to be installed (package ``python-numpy`` and ``python-scipy``
-  in debian
-  distribution). In case of troubles with a non-|gnu| compiler,
-  gcc/g++ (>= 4.8) should be a safe solution (package
-  ``build-essential`` in debian distribution).
-
-* If you want mesh generation, it requires the package qhull
-  installed on your system (package ``libqhull-dev`` in debian
-  distribution).
-
-* If you want to use MUMPS linear sparse solver instead of SUPERLU, you
-  need to  install the sequential version of MUMPS on your system
-  (or the parallel one if you intend to use the parallel version of |gf|).
-
-Download sources
-----------------
-
-There are two ways to get |gf|, either as a compressed package (stable
-release) or via anonymous svn access (unstable releases).
-
-The latest stable release of |gf| is getfem-|version|.tar.gz you can download 
`here
-<http://getfem.org/stable/getfem-5.1.tar.gz>`_.
-
- * download package:
-
-     $ wget http://getfem.org/stable/getfem-|version|.tar.gz
-
- * unpack:
-
-     $ tar xzf getfem-|version|.tar.gz
-
- * and go to the root directory of |gf|:
-
-     $ cd getfem-|version|/
-
-The latest unstable releases is:
-
-* checkout over GIT protocol::
-
-    $ git clone https://git.savannah.nongnu.org/git/getfem.git
-
-* go to the root directory of |gf|::
-
-    $ cd getfem
-
-* and run ``autogen.sh`` script::
-
-     $ bash autogen.sh
-
-
-Compiling
-----------
-
-Configure with::
-
-  $ ./configure
-
-then start the compilation with::
-
-  $ make
-
-and finally install with::
-
-  $ make install
-
-Configure Options
-^^^^^^^^^^^^^^^^^
-
-* If you want to use a different compiler than the one chosen
-  automatically by the ``./configure`` script, just specify its
-  name on the command line::
-
-    $ ./configure CXX=mycompiler
-
-* If you want to use a specific **BLAS** library, you may have to
-  supply the necessary link flags and libs to the configure script
-  with::
-
-    $ ./configure BLAS_LIBS="-L/path/to/lib -lfoo -lbar ....etc"
-
-  for example::
-
-    $ ./configure BLAS_LIBS="-L/usr/lib/sse2/atlas -lblas"
-
-* If you want to set the prefix directory where to install the library
-  you can use the ``--prefix`` option (the default prefix directory is
-  ``/usr/local``)::
-
-    $ ./configure --prefix=my_dest_dir
-
-* If you want build |py| |gfi|, use ``--enable-python=yes`` option.
-
-  .. warning::
-
-     * you should not use a different compiler than the one that was used
-       for |gf|.
-     * you should have built the |gf| static library (i.e. do not use
-       ``./configure --disable-static`` when building |gf|).
-     * On linux/x86_64 platforms, a mandatory option when building |gf|
-       (and any static library linked to them) is the ``--with-pic``
-       option of their ``./configure`` script.
-
-Note that there are other options to the configure script. A
-``./configure --help`` will list them. Most important ones are
-``--enable-matlab``, ``--enable-python`` and ``--enable-scilab``
-to build the |gfi|.
-
-
+somewhat standard. See the `download and install <../download.html>`_ page for 
more details for the installations on the different plateforms.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]