---
lrde-upload.sh | 16 +++++++++-------
1 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/lrde-upload.sh b/lrde-upload.sh
index 75f51a3..ec8f0c8 100755
--- a/lrde-upload.sh
+++ b/lrde-upload.sh
@@ -1,4 +1,4 @@
-#!/bin/sh
+#! /bin/sh
# This file is run by the LRDE autobuilder after a successful compilation.
# It is not meant to be distributed with Olena.
@@ -15,14 +15,15 @@ VERSION=`autoconf --trace='AC_INIT:$2'`
CURRENT_DATE=`date +'%d_%m_%y'`
REV=$VERSION-snapshot-$CURRENT_DATE
-# Always do "cp then mv" when uploading the file, so that someone
-# cannot start a download why the destination file is incomplete.
+# Always do "cp then mv" when uploading the file, so that nobody
+# can start a download while the destination file is incomplete.
-# Upload the tarball
+# Upload the tarball.
mkdir -p $DEST
# Delete tarballs older than 2 days.
-find $DEST -maxdepth 1 -type f -mtime +2 -name 'olena-*-snapshot-*' -exec rm -f {} \;
+find $DEST -maxdepth 1 -type f -mtime +2 -name 'olena-*-snapshot-*' \
+ -exec rm -f {} \;
# tar.gz
cp -f olena-$VERSION.tar.gz $DEST/olena-$REV.tar.gz.tmp
@@ -42,7 +43,7 @@ rm -rf $DEST_DOC/user_doc.tmp
rm -rf $DEST_DOC/white_paper_html.tmp
-# Dist check set umask to 077. Restoring permissions for all
+# `make distcheck' sets umask to 077. Restoring permissions for all
chmod -R a+rx milena/doc/user
chmod -R a+rx milena/doc/white_paper
@@ -63,5 +64,6 @@ mv -f $DEST_DOC/white_paper_html.tmp $DEST_DOC/white_paper_html
rm -rf $DEST_DOC/user_doc.old
rm -rf $DEST_DOC/white_paper_html.old
-# We want to be able to modify these files with both build and doc accounts.
+# We want to be able to modify these files with both the `build' and
+# `doc' accounts.
chmod -R g+w $DEST
--
1.6.1.2
---
ChangeLog | 11 ++++++-----
milena/ChangeLog | 35 +++++++++++++++++++----------------
milena/sandbox/ChangeLog | 6 +++---
3 files changed, 28 insertions(+), 24 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index d23c5b5..73c6fb3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -55,8 +55,8 @@
2009-07-09 Guillaume Lazzara <lazzara(a)lrde.epita.fr>
- * mln/geom/rotate.hh: Avoid an ICE with gcc 4.0.1 on MacOs
- X (leopard 10.5).
+ * mln/geom/rotate.hh: Avoid an ICE with gcc 4.0.1 on Mac OS
+ X (Leopard 10.5).
2009-07-09 Guillaume Lazzara <lazzara(a)lrde.epita.fr>
@@ -67,8 +67,8 @@
Improve lrde-upload.sh script.
* lrde-upload.sh:
- - Prune old tarballs.
- - Append the current date to the tarball name.
+ - Prune old tarballs.
+ - Append the current date to the tarball name.
2009-07-08 Guillaume Lazzara <lazzara(a)lrde.epita.fr>
@@ -229,7 +229,8 @@
2009-06-12 Roland Levillain <roland(a)lrde.epita.fr>
- Extend Autoconf macro OLN_WITH_LIB to handle the library's dependencies.
+ Extend Autoconf macro OLN_WITH_LIB to handle the library's
+ dependencies.
* m4/oln-with-lib.m4 (OLN_WITH_LIB): Add a sixth (optional)
argument to pass other libraries that the search library depends
diff --git a/milena/ChangeLog b/milena/ChangeLog
index 0752279..d7ff297 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1075,7 +1075,7 @@
Small fixes.
* mln/core/image/imorph/labeled_image.hh: add bboxes() and subdomain()
- members.
+ members.
* mln/morpho/tree/compute_attribute_image.hh: re-indent.
@@ -1515,8 +1515,8 @@
* doc/Makefile.am: improve rules dependencies.
* doc/examples/Makefile.am:
- - Compare split files to references.
- - Add a rule 'data-regen'. Reference data is now generated on demand
+ - Compare split files to references.
+ - Add a rule 'data-regen'. Reference data is now generated on demand
only.
* doc/examples/split/accu-right-instanciation-1.cc,
@@ -7264,7 +7264,7 @@
* tests/accu/Makefile.am,
* tests/accu/stat/Makefile.am:
- Update makefiles respecting stat accus directory.
+ Update makefiles respecting stat accus directory.
* apps/statues/mesh-complex-max-curv.cc,
* apps/statues/mesh-max-curv.cc,
@@ -7343,7 +7343,7 @@
* mln/morpho/dilation.hh,
* mln/morpho/erosion.hh:
Idem + replace mln_morpho_select_accu(..., accu_name) by
- mln_morpho_select_accu(..., stat::accu_name).
+ mln_morpho_select_accu(..., stat::accu_name).
2009-06-05 Edwin Carlinet <carlinet(a)lrde.epita.fr>
@@ -7370,9 +7370,9 @@
More fixes for documentation build system.
* doc/Makefile.am:
- - Fix invalid replacement in doxyfile.
- - Fix invalid rule names.
- - Fix invalid dist files.
+ - Fix invalid replacement in doxyfile.
+ - Fix invalid rule names.
+ - Fix invalid dist files.
* tests/tools/pretty_check.sh: return the make check return value.
@@ -9776,12 +9776,12 @@
Simplifying function concepts.
* mln/core/concept/function.hh: Remove all concepts except
- Function, Function_v2v, Function_v2b, Function_vv2v, and
- Function_vv2b.
+ Function, Function_v2v, Function_v2b, Function_vv2v, and
+ Function_vv2b.
* mln/data/transform.spe.hh: De-activate some implementation
- routines and their related some dispatch routines.
- (todo): New.
+ routines and their related some dispatch routines.
+ (todo): New.
* mln/topo/is_simple_cell.hh,
* mln/topo/skeleton/breadth_first_thinning.hh,
@@ -18010,7 +18010,8 @@
Fix issues with GCC 2.95.
- * mln/value/internal/limits.hh: add support for std::numeric_limits with gcc 2.95.
+ * mln/value/internal/limits.hh: add support for
+ std::numeric_limits with gcc 2.95.
* headers.mk: add limits.hh.
@@ -18025,7 +18026,8 @@
* mln/util/tree.hh: use <iostream> instead of <ostream>.
* mln/core/dpoint.hh,
- * mln/core/point.hh: Help the compiler resolving 'G::dim' in method return type.
+ * mln/core/point.hh: Help the compiler resolving 'G::dim' in
+ method return type.
* mln/value/float01.hh: use '&&' operator instead of 'and'.
@@ -25023,7 +25025,8 @@
Fix return type of i2v::array::operator().
- * mln/fun/i2v/array.hh (operator() const): Return a reference instead of a copy.
+ * mln/fun/i2v/array.hh (operator() const): Return a reference
+ instead of a copy.
2008-10-27 Guillaume Lazzara <z(a)lrde.epita.fr>
@@ -25031,7 +25034,7 @@
* mln/core/site_set/box.hh:
- Add a new version of enlarge() which can be applied on a single
- dimension passed as parameter.
+ dimension passed as parameter.
- Add center() which returns an approximated central site of a box.
2008-10-27 Guillaume Lazzara <z(a)lrde.epita.fr>
diff --git a/milena/sandbox/ChangeLog b/milena/sandbox/ChangeLog
index 17350fe..45577b8 100644
--- a/milena/sandbox/ChangeLog
+++ b/milena/sandbox/ChangeLog
@@ -56,10 +56,10 @@
Util to trace attribute evolution along the branch.
* edwin/exec/mask_colorize.cc: Color labeling from a mask
- image.
+ image.
* edwin/exec/max_delta_colormean_obj.cc: Retrieve components
- that maximes the distance between the mean color of components.
+ that maximizes the distance between the mean color of components.
* edwin/mln/morpho/tree/propagate.hh: Minor fixes.
@@ -797,7 +797,7 @@
* edwin/mln/morpho/tree/components.hh,
* edwin/mln/morpho/tree/filter.hh,
* laurent/playing_with_attributes.cc: Propagate suppression of
- intermediate function concepts.
+ intermediate function concepts.
2009-06-01 Fabien Freling <fabien.freling(a)lrde.epita.fr>
--
1.6.1.2
* INSTALL, README: Here.
---
ChangeLog | 6 ++++++
INSTALL | 9 +++++++++
README | 6 ++++++
3 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 8ebe907..a2cfefa 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2009-07-13 Roland Levillain <roland(a)lrde.epita.fr>
+ Mention Trimesh in the documentation.
+
+ * INSTALL, README: Here.
+
+2009-07-13 Roland Levillain <roland(a)lrde.epita.fr>
+
* INSTALL: Update.
2009-07-13 Roland Levillain <roland(a)lrde.epita.fr>
diff --git a/INSTALL b/INSTALL
index 3b62c89..39196d9 100644
--- a/INSTALL
+++ b/INSTALL
@@ -140,6 +140,10 @@ running:
% ../configure --help
+Olena ships with Trimesh, a third-party library that we have been
+using to manipulate 3D meshes. Eventually, we will drop Trimesh from
+the distribution.
+
See README for more information on additional components.
@@ -196,6 +200,11 @@ And optionally:
* Swilena's Python bindings in `/usr/local/lib/python2.x/site-packages/',
+ * Trimesh programs in `/usr/local/bin/',
+
+ * Trimesh libraries in `/usr/local/lib/',
+
+ * Trimesh headers in `/usr/local/share/trimesh/',
You can later remove Olena from your system by running
diff --git a/README b/README
index af885f2..52fd5b0 100644
--- a/README
+++ b/README
@@ -124,6 +124,12 @@ installation of these applications use::
./configure --enable-apps
+Olena ships with Trimesh, a third-party library that we have been
+using to manipulate 3D meshes. Eventually, we will drop Trimesh from
+the distribution. To enable it, use::
+
+ ./configure --enable-trimesh
+
To read/write TIFF images with Olena, libtiff is required. If
``configure`` is unable to find libtiff on your system, you can help
--
1.6.3.1
---
ChangeLog | 4 +
INSTALL | 225 ++++++++++++++++++++++++-------------------------------------
2 files changed, 92 insertions(+), 137 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 8ff4133..8ebe907 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2009-07-13 Roland Levillain <roland(a)lrde.epita.fr>
+ * INSTALL: Update.
+
+2009-07-13 Roland Levillain <roland(a)lrde.epita.fr>
+
* README: Update.
2009-07-13 Guillaume Lazzara <lazzara(a)lrde.epita.fr>
diff --git a/INSTALL b/INSTALL
index 946675f..3b62c89 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,53 +1,66 @@
+==================
+Installation Notes
+==================
+
+
This file contains information about the installation process of Olena.
You can read the `README' file for general information about Olena.
-1.1 Required software
-=====================
+
+Required Software
+=================
Here is a non-exhaustive list of required software required to build
Olena successfully.
* to compile the user examples:
+
- a POSIX shell, like Bash
- a decent C++ compiler, like GNU C++
- - a `make' utility, like GNU or BSD `make'
+ - a `make' utility, like GNU `make'
Optional:
- * to compile the documentation:
+ * to (re)compile the documentation:
+
- a LaTeX distribution
- the `listings' TeX package
- the utility `convert' from ImageMagick
- - GNU Autogen
-
- `hevea', a TeX to HTML conversion tool
- - the `texinfo' utilities from GNU
-
- - latex2html
+ - latex2html
* to use various image types:
- - libMagick++
- - libTiff
+ - Magick++
- - libGdcm
+ - libtiff
- * to develop _in_ Olena:
- - GNU Autotools (Autoconf 2.54, Automake 1.7)
+ - GDCM
- * to develop _in_ Swilena (Python Bindings):
- - Swig
+ * to develop _within_ Olena:
+ - GNU Autoconf 2.61
-1.2 Configuration
-=================
+ - GNU Automake 1.10
+
+ - GNU Libtool 1.5.22
+
+ * to develop _within_ Swilena:
+
+ - SWIG
+
+ - Python
+
+
+Configuration
+=============
In order to prepare the build process, you need to configure the source
tree.
@@ -55,24 +68,24 @@ tree.
Assuming your Olena distribution is uncompressed in directory
`olena-1.0', follow these steps:
- $ mkdir ../build
- $ cd ../build && ../olena-1.0/configure CXXFLAGS=''
-
- *Note:* take care to set `CXXFLAGS' always when running `configure',
-for the default value computed by `configure' may yield to compilation
-issues (conflicts between optimization and debugging).
+ % cd olena-1.0
+ % mkdir _build
+ % cd _build
+ % ../configure
The build process can be altered by a number of options you can pass
to the `configure' script. The following sections describe them.
Additionally, if you are an Olena maintainer (a person who runs
`make distcheck'), _prefer setting `CXXFLAGS' as an environment
-variable_: the flags given on the commandline to `configure' are not
-propagated to recursive runs by `make distcheck'.
+variable_: the flags given on the command line to `configure' are not
+propagated to recursive runs by `make distcheck'. Or better: use the
+environment CONFIG_SITE to set up a configuration environment (see
+Autoconf's manual).
-1.2.1 Installation path
------------------------
+Installation Path
+-----------------
By default, Olena is installed in the standard "local" directory of
your system. This is usually `/usr/local' under Unix.
@@ -82,8 +95,8 @@ your system. This is usually `/usr/local' under Unix.
--prefix=<installation prefix>
-1.2.2 Compiler selection and compilation flags
-----------------------------------------------
+Compiler Selection and Compilation Flags
+----------------------------------------
By default, `configure' will try to use the first C++ compiler it
encounters on your system. If `CXX' is not set, it will look, in order,
@@ -106,151 +119,89 @@ for:
You can override the detection system by passing your favorite
compiler name to `configure', as follows:
- $ .../configure CXX=<your-favorite-C++-compiler>
+ % ../configure CXX=<your-favorite-C++-compiler>
As an alternative, you can also set the environment variable `CXX'.
+ For some compilers (GNU g++ and Intel's icpc to some extent) ,
+`configure' will use default CXXFLAGS. You can override the default
+C++ flags by giving `configure' your selection of flags:
- For most compilers, `configure' will select debugging and minimal
-optimization (`-g -O2' with g++), which is wrong. You should override
-the default C++ flags by giving `configure' your selection of flags:
-
- $ .../configure CXXFLAGS="<your-favorite-flags>"
-
- This is especially useful to solve a number of problems, described
-in the following section.
-
-
-1.3 Using `CXXFLAGS' to solve compilation problems
-==================================================
+ % ../configure CXXFLAGS="<your-favorite-flags>"
-1.3.1 Olena needs C99
----------------------
-
-While Olena is written in C++, it uses a number of features (math
-functions) from ISO C99. However most C++ compilers do not enable these
-features by default. If your compilation fails with (e.g.) undefined
-references to `roundf', but you know what flags can activate these
-functions, add them to `CXXFLAGS'.
-
- In case your system does not provide some math functions necessary
-for Olena, you can force the use of a local, overloaded, implementation,
-by using macros of the form `-DOLN_NEED_xxx', where `xxx' stands for
-the name of the missing function, in uppercase. For example, on Darwin
-(MacOS X), the flag `-DOLN_NEED_SQRTF' is needed (but `configure'
-should add it anyway).
-
-
-1.3.2 Olena needs deep template recursion
------------------------------------------
-
-The C++ design patterns used in Olena use deep template nesting and
-recursion. However, the C++ standard specifies that C++ compiler need
-only handle template recursion up to 19 levels, which is insufficient
-for Olena. This is a problem for GCC 2.95 and probably other compilers.
-
- Hopefully, `configure' tries to fix this automatically by adding
-`-ftemplate-depth-NN' when necessary, but other compilers than GCC may
-need other flags. If you know these flags, add them to `CXXFLAGS'.
-
-
-1.3.3 Debugging flags
----------------------
-
-All over the code, many sanity checks are enabled by default. They are
-convenient since they make sure nothing wrong is passed to the functions.
-However, once the program is stable they may not be necessary anymore.
-Passing `-DNDEBUG' to the CXXFLAGS disable many sanity checks, while providing
-*high* performance improvement.
-
-
-
-1.3.4 Speeding up the compilation
----------------------------------
-
-When using GCC, by default separate phases of the compilation of each
-file are run sequentially (compilation then assembly). Using `-pipe' in
-`CXXFLAGS' allows GCC to fork processes and run compilation phases in
-parallel, which brings a compilation speedup on multiprocessor machines
-or machines with slow storage access (when using `-pipe', no
-intermediary data is saved).
+Additional Components
+=====================
-1.4 Speeding up the configuration process
-=========================================
+In additional to Milena, several build targets can be enabled. These
+parts are called "components", and you can obtain a list of them by
+running:
-`configure' can manage a cache of autodetected features and values.
-This cache speeds up `configure' runs and can be activated with the
-`-C' option.
+ % ../configure --help
- _NOTE_: the effects of many of the flags passed to `configure' are
-stored in the cache. If you decide to re-run `configure' with other
-flags, delete the `config.cache' file first.
+See README for more information on additional components.
-1.5 Elidable components
-=======================
+Building
+========
-Several build targets can be disabled, in case you are only interested
-in "parts" of the full Olena distribution.
+Once your build directory is `configure'd, you can run
- The elidable parts are so-called "components", and you can obtain a
-list of them by running:
+ % make
- $ .../configure --help
+to recursively build all the selected components.
-1.6 Building
-============
+ Additionally, you can build and run the test suite with:
-Once your build directory is `configure'd, you can run
+ % make check
- $ make
+However, this process is time- and memory- consuming, and you probably
+do not need it except if you are developing/debugging Olena.
- to recursively build all selected components.
+Compiler Notes
+==============
- Additionally, you can build and run the testsuite and demonstration
-programs with:
+Olena has been tested on the following configurations:
- $ make check
+System Compiler
+GNU/Linux on IA-32 g++ (GNU GCC) 3.3, 3.4, 4.0, 4.1, 4.2 and 4.3
+GNU/Linux on IA-32 icpc (Intel C/C++ Compiler) 10.1 and 11.0
+GNU/Linux on AMD64/Intel 64 g++ (GNU GCC) 4.1
+Mac OS X (10.5) on IA-32 g++ (GNU GCC) 4.0.1
- However, this process is very time- and memory- consuming.
+Installing
+==========
-1.7 Compiler notes
-==================
+To install the Olena headers and additional files on your system, run:
-Olena has been tested on the following configurations :
+ % make install
-System Compiler
-Linux g++ 3.3, 3.4, 4.0, 4.1, 4.2
- icc 10.1, 11.0
-Linux-64 g++ 4.1
-MacOS X g++ 4.0.1
+from the build directory.
+ If not overridden with `--prefix', this will install:
-2.1 Installing
-==============
+ * the headers in `/usr/local/include/mln/',
-To install the Olena headers and additional files on your system, run:
+ * some applications and tools in `/usr/local/bin/',
- $ make install
+ * sample images and meshes in `/usr/local/share/olena/images/',
- from the build directory.
+ * the documentation in `/usr/local/share/doc/olena/`
- If not overridden with `--prefix' (see the BUILD file) , this will
-install:
+And optionally:
- * the headers in `/usr/local/include/mln',
+ * Swilena's Python bindings in `/usr/local/lib/python2.x/site-packages/',
- * sample images in `/usr/local/share/milena',
You can later remove Olena from your system by running
- $ make uninstall
-
- from the build directory.
+ % make uninstall
+from the build directory (if you have kept it). We recommend the use
+of GNU Stow (or any similar program) during the installation of Olena,
+to make the uninstallation of Olena easier.
--
1.6.3.1
---
ChangeLog | 4 ++
README | 155 +++++++++++++++++++++++++++++++++++++-----------------------
2 files changed, 99 insertions(+), 60 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 999d8b1..8ff4133 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2009-07-13 Roland Levillain <roland(a)lrde.epita.fr>
+
+ * README: Update.
+
2009-07-13 Guillaume Lazzara <lazzara(a)lrde.epita.fr>
* NEWS: Add release date.
diff --git a/README b/README
index e8603eb..af885f2 100644
--- a/README
+++ b/README
@@ -6,26 +6,35 @@ Olena is free software: you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
Software Foundation, version 2 of the License.
-The complete GNU General Public Licence Notice can be found as the
-'COPYING' file in the root directory.
+Olena is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
-=======================
+You should have received a copy of the GNU General Public License
+along with Olena. If not, see <http://www.gnu.org/licenses/>.
+
+The complete GNU General Public License Notice can also be found in
+the 'COPYING' file in the root directory.
+
+
+======================
Introduction to Olena
-=======================
+======================
Olena_, a platform dedicated to image processing.
-.. _Olena: http:://olena.lrde.epita.fr
+.. _Olena: http://olena.lrde.epita.fr
Overview
========
-Olena is a platform dedicated to image processing. At the moment it is
-mainly composed of a C++ library: Milena. This library features many
-tools to easily perform image processing tasks. Its main
+Olena is a platform dedicated to image processing. At the moment it is
+mainly composed of a C++ library: Milena. This library features many
+tools to easily perform image processing tasks. Its main
characteristic is its genericity: it allows to write an algorithm once
-and run it over many kinds of images (grey scale, color, 1D, 2D, 3D,
+and run it over many kinds of images (gray scale, color, 1D, 2D, 3D,
...).
Olena is a project developed by the `EPITA Research and Development
@@ -39,17 +48,17 @@ We do our image processing research using this library, but most
importantly we have gathered (and still do) generic programming
expertise from the library development.
-Yet, Olena is an ongoing development project. Few algorithms or
-definitions may change in a near future. A list of potential changes
+Yet, Olena is an ongoing development project. Few algorithms or
+definitions may change in a near future. A list of potential changes
is maintained here :
https://olena.lrde.epita.fr/FeaturesSubjectToChange.
-Likewise, the documentation does not cover the whole project yet. In the
+Likewise, the documentation does not cover the whole project yet. In the
`doc/' directory you will find the first draft of a reference
-manual. It includes a quick reference guide and a tutorial. This is a
+manual. It includes a quick reference guide and a tutorial. This is a
good start. In `milena/tools' and `milena/doc/examples' few sample
-programs are available. Most of them are already used to illustrate
-the tutorial. For the rest, we're afraid you will have to dig the
+programs are available. Most of them are already used to illustrate
+the tutorial. For the rest, we're afraid you will have to dig the
code or e-mail us.
Please direct any question or comments to <olena(a)lrde.epita.fr>, or
@@ -70,7 +79,7 @@ the command prompt::
make install (as root)
Note that an installation is specific to the compiler used to install
-it. Indeed, the call to ``./configure`` enables some workarounds and,
+it. Indeed, the call to ``./configure`` enables some workarounds and,
consequently, users must compile with the same compiler to avoid
compatibility problems.
@@ -86,46 +95,63 @@ Please read the INSTALL file for more information about building and
installing Olena.
-Additional features
+Additional Features
-------------------
-Python bindings are provided thanks to Swilena. It is disabled by
-default because it requires extra dependencies: Swig. To enable the
-compilation of this module use::
+Swilena is an optional component of Olena exposing Milena to other
+languages thanks to the Simplified Wrapper and Interface Generator
+(SWIG_).
- ./configure --enable-swilena
+.. _SWIG: http://www.swig.org
+
+For the moment, only some Python_ bindings are provided. They are
+disabled by default because they require extra dependencies (SWIG and
+Python).
+
+.. _Python: http://www.python.org
+
+To enable the installation of this module use::
+ ./configure --enable-swilena
-Sample tools are shipped in the tarball. To enable the compilation of
- these tools use:: ./configure --enable-tools
+Sample tools are shipped with the tarball. To enable the installation of
+these tools use::
+ ./configure --enable-tools
-Sample applications are shipped in the tarball. To Enable the
-compilation of these applications use::
+Sample applications are shipped with the tarball. To enable the
+installation of these applications use::
./configure --enable-apps
-To read/write TIFF images with Olena, libtiff is required. To specify
-the base directory, use::
+To read/write TIFF images with Olena, libtiff is required. If
+``configure`` is unable to find libtiff on your system, you can help
+it by specifying the base directory of libtiff, e.g.::
+
+ ./configure --with-tiff=/usr/local
- ./configure --with-tiff=/path/to/basedir
+To read/write DICOM images with Olena, GDCM is required. Likewise,
+you can tell ``configure`` where to find it by giving its install
+prefix, e.g.::
-To read/write GDCM images with Olena, libgdcm is required. To specify
-the base directory, use::
+ ./configure --with-gdcm=/usr/local
- ./configure --with-gdcm=/path/to/basedir
+Olena use Magick++ to read and write images in common formats. As for
+other optional dependencies, you can specify where it is located (if
+needed) at configuration time::
+ ./configure --with-magickxx=/usr/local/
-Layout of the tarball
+Layout of the Tarball
---------------------
The Olena project directory layout is as follows:
build-aux
- Auxialiary tools used by the GNU Build System during ``configure``
+ Auxiliary tools used by the GNU Build System during ``configure``
and ``make`` stages.
external
@@ -133,7 +159,7 @@ external
m4
- Portability macros from the ``gnulib`` library.
+ Extra Autoconf macros.
milena
@@ -141,7 +167,7 @@ milena
Application examples.
mln
- Header of the Milena library.
+ Headers of the Milena library.
tests
The test suite.
@@ -153,17 +179,20 @@ milena
Example tools.
mesh
- Mesh images.
+ Some 3D meshes, mostly used for test purpose.
img
- Test images.
+ Some (2D) images, mostly used for test purpose.
demos
Demos of Milena.
swilena
- Python binding sources.
+
+
+ python
+ Some Python bindings for Milena.
Requirements
@@ -171,11 +200,14 @@ Requirements
Olena has been tested on the following configurations:
-System Compiler
-Linux g++ 3.3, 3.4, 4.0, 4.1, 4.2
- icc 10.1, 11.0
-Linux-64 g++ 4.1
-MacOS X g++ 4.0.1
+=========================== =============================================
+System Compiler
+=========================== =============================================
+GNU/Linux on IA-32 g++ (GNU GCC) 3.3, 3.4, 4.0, 4.1, 4.2 and 4.3
+GNU/Linux on IA-32 icpc (Intel C/C++ Compiler) 10.1 and 11.0
+GNU/Linux on AMD64/Intel 64 g++ (GNU GCC) 4.1
+Mac OS X (10.5) on IA-32 g++ (GNU GCC) 4.0.1
+=========================== =============================================
According to the wanted features, some dependencies may be required:
@@ -185,21 +217,25 @@ To enable I/O with TIFF images, `libtiff`_ must be installed.
.. _libtiff: http://www.libtiff.org/
-To enable I/O with GDCM images, `libgdcm`_ must be installed.
-
-.. _libgdcm: http://sourceforge.net/apps/mediawiki/gdcm/
+To enable I/O with GDCM images, `GDCM`_ must be installed.
+.. _GDCM: http://sourceforge.net/apps/mediawiki/gdcm/
-To support many image formats in Olena's I/O system, `libmagick++`_ must
+To support many image formats in Olena's I/O system, `Magick++`_ must
be installed.
-.. _libmagick++: Please see your distribution package manager.
+.. _Magick++: http://www.imagemagick.org/Magick++/
-
-`Boost`_ may be needed if you want to support tuple accumulators.
+The Boost Tuple Library from the `Boost`_ Project is needed if you
+want to support tuple accumulators.
.. _Boost: http://www.boost.org/
+Apart from GDCM, these dependencies are commonly provided by the
+package management systems (e.g., Debian's APT, Mac OS X's Mac Ports,
+etc.). We recommend using package managers instead of installing
+dependencies by hand.
+
See Also
========
@@ -218,25 +254,24 @@ There are other sources of interest in the distribution.
License
=======
-Olena is released under the GNU General Public Licence. See the file
+Olena is released under the GNU General Public Licence. See the file
``COPYING`` (at the root of the source tree) for details.
Contacts
========
-The team can be reached by mail at olena(a)lrde.epita.fr. Snail mail
-addresses follow.
+The team can be reached by mail at olena(a)lrde.epita.fr. The snail
+mail address follows.
* Olena - LRDE
| Laboratoire de Recherche et Développement de l'EPITA (LRDE)
| 14-16 rue Voltaire
- | F-94276 Le Kremlin-Bicêtre CEDEX
+ | FR-94276 Le Kremlin-Bicêtre CEDEX
| France
-
Bibliography
============
@@ -246,13 +281,13 @@ papers.
About Image Processing Programming:
* `Milena: Write Generic Morphological Algorithms Once, Run on Many
- Kinds of Images`. Roland Levillain, Thierry Géraud, Laurent
+ Kinds of Images`. Roland Levillain, Thierry Géraud, Laurent
Najman. In the proceedings of the 9th International Symposium on
Mathematical Morphology (ISMM) http://www.cs.rug.nl/~ISMM09/
Groningen, The Netherlands August 24 - 27, 2009.
* `Generic Algorithmic Blocks Dedicated to Image Processing`,
- Jérôme Darbon, Thierry Géraud, Patrick Bellot. In the proceedings
+ Jérôme Darbon, Thierry Géraud, Patrick Bellot. In the proceedings
of ECOOP PHD Oslo, Norway, June 2004.
* `Generic Implementation of Morphological Image Operators`, Jérôme
@@ -286,17 +321,17 @@ About Generic Programming Paradigm:
* `Static C++ Object-Oriented Programming (SCOOP)`, Nicolas Burrus,
Alexandre Duret-Lutz, Thierry Géraud, David Lesage, and Raphaël
- Poss. In the Proceedings of the Workshop on Multiple Paradigm
+ Poss. In the Proceedings of the Workshop on Multiple Paradigm
with OO Languages (MPOOL'03) Anaheim, CA, October 2003.
- * `Generic Design Patterns in C++`. Alexandre Duret-Lutz, Thierry
+ * `Generic Design Patterns in C++`. Alexandre Duret-Lutz, Thierry
Géraud, and Akim Demaille. In the Proceedings of the 6th USENIX
Conference on Object-Oriented Technologies and Systems
(COOTS'2001), pages 189-202, San Antonio, Texas, USA,
January-February 2001.
* `Olena: a Component-Based Platform for Image Processing, mixing
- Generic, Generative and OO Programming`. Alexandre Duret-Lutz.
+ Generic, Generative and OO Programming`. Alexandre Duret-Lutz.
In the Proceedings of the 2nd International Symposium on
Generative and Component-Based Software Engineering (GCSE 2000),
Young Researchers Workshop (published in "Net.ObjectDays2000";
--
1.6.3.1