Difference between revisions of "MonetDB:Building from sources"

From MonetDB
Jump to navigationJump to search
(Updated from Aug2011 to Dec2011 (and removed some legacy))
Line 1: Line 1:
== Building the Aug2011 release from source tarball ==  
+
== Building the Dec2011 release from source tarball ==  
 
=== Initial install ===
 
=== Initial install ===
  
 
'''a.''' Create a directory where you want to place MonetDB on your machine, and <tt>`cd`</tt> into that directory, e.g.:  
 
'''a.''' Create a directory where you want to place MonetDB on your machine, and <tt>`cd`</tt> into that directory, e.g.:  
  mkdir ~/MonetDB-Aug2011
+
  mkdir ~/MonetDB-Dec2011
  cd ~/MonetDB-Aug2011
+
  cd ~/MonetDB-Dec2011
  
'''b.''' Download the source tarball: [http://dev.monetdb.org/downloads/sources/Aug2011-SP1/MonetDB-11.5.3.tar.xz  Aug 2011 release]
+
'''b.''' Download the source tarball: [http://dev.monetdb.org/downloads/sources/Dec2011/MonetDB-11.7.5.tar.xz  Dec 2011 release]
  
 
'''c.''' Unpack the tarball in the above created directory, e.g.:  
 
'''c.''' Unpack the tarball in the above created directory, e.g.:  
  tar xf MonetDB-11.5.3.tar.xz
+
  tar xf MonetDB-11.7.5.tar.xz
  
 
'''d.''' Create a build-directory and <tt>`cd`</tt> into it, e.g.:  
 
'''d.''' Create a build-directory and <tt>`cd`</tt> into it, e.g.:  
Line 17: Line 17:
 
'''e.''' <tt>`configure`</tt> the code base for your system. You would at least want to specify a <tt>'prefix'</tt> where to install MonetDB, e.g.:  
 
'''e.''' <tt>`configure`</tt> the code base for your system. You would at least want to specify a <tt>'prefix'</tt> where to install MonetDB, e.g.:  
  
  ../MonetDB-11.5.3/configure --prefix=~/MonetDB-Aug2011
+
  ../MonetDB-11.7.5/configure --prefix=~/MonetDB-Dec2011
 
 
* Further, you'd like to build only the '''monetdb5 ''' back-end, the '''sql''' front-end, and GIS module '''geom'''; i.e., add the following options to the above <tt>`configure`</tt> command:
 
 
--enable-monetdb5 --enable-sql --enable-geom
 
 
 
* The deprecated '''monetdb4''' back-end and '''pathfinder''' XQuery compiler are not required; hence, you might want to omit building these obsolete packages, i.e., add:
 
 
 
--disable-monetdb4 --disable-pathfinder
 
  
 
* For more <tt>`configure`</tt> options, see:  
 
* For more <tt>`configure`</tt> options, see:  
  ../MonetDB-11.5.3/configure --help
+
  ../MonetDB-11.7.5/configure --help
  
 
'''f.''' Once <tt>`configure`</tt> has finished successfully, you can compile MonetDB; still in the above created <tt>BUILD</tt> directory, call:  
 
'''f.''' Once <tt>`configure`</tt> has finished successfully, you can compile MonetDB; still in the above created <tt>BUILD</tt> directory, call:  
Line 40: Line 32:
 
'''h.''' Finally, to use MonetDB conveniently, set the following PATHs:  
 
'''h.''' Finally, to use MonetDB conveniently, set the following PATHs:  
  
  prefix=~/MonetDB-Aug2011
+
  prefix=~/MonetDB-Dec2011
 
  export      PATH=$prefix/bin:$PATH
 
  export      PATH=$prefix/bin:$PATH
 
  export    MANPATH=$prefix/share/man:$MANPATH
 
  export    MANPATH=$prefix/share/man:$MANPATH
Line 49: Line 41:
 
=== Updating to a newer version ===
 
=== Updating to a newer version ===
  
In case you need / want to get and use an updated version of the Aug2011 release of MonetDB - a new tarball, potentially including bug fixes, might be available at least once a day.
+
In case you need / want to get and use an updated version of the Dec2011 release of MonetDB - a new tarball, potentially including bug fixes, might be available at least once a day.
 
First, download the [http://dev.monetdb.org/downloads/sources/Latest/ latest source tarball] and unpack it.  
 
First, download the [http://dev.monetdb.org/downloads/sources/Latest/ latest source tarball] and unpack it.  
 
Then, re-compile and install MonetDB by repeating steps f. & g. in directory <tt>BUILD</tt> as above
 
Then, re-compile and install MonetDB by repeating steps f. & g. in directory <tt>BUILD</tt> as above
 
(if necessary, <tt>`make`</tt> will automatically call <tt>`configure`</tt> with the same arguments you used initially).
 
(if necessary, <tt>`make`</tt> will automatically call <tt>`configure`</tt> with the same arguments you used initially).
  
== Building the Aug2011 release from Mercurial (HG) sources ==
+
== Building the Dec2011 release from Mercurial (HG) sources ==
  
 
[http://www.monetdb.org/Assets/MonetDB-Mercurial.html Introduction to Mercurial (HG)]
 
[http://www.monetdb.org/Assets/MonetDB-Mercurial.html Introduction to Mercurial (HG)]
Line 63: Line 55:
 
'''a.''' Create a directory where you want to place MonetDB on your machine, and <tt>`cd`</tt> into that directory, e.g.:  
 
'''a.''' Create a directory where you want to place MonetDB on your machine, and <tt>`cd`</tt> into that directory, e.g.:  
  
  mkdir ~/MonetDB-Aug2011
+
  mkdir ~/MonetDB-Dec2011
  cd ~/MonetDB-Aug2011
+
  cd ~/MonetDB-Dec2011
  
'''b.''' Get a clone of the MonetDB Mercurial (HG) repository and check out the Aug2011 branch:
+
'''b.''' Get a clone of the MonetDB Mercurial (HG) repository and check out the Dec2011 branch:
  
  hg clone -u Aug2011 http://dev.monetdb.org/hg/MonetDB/
+
  hg clone -u Dec2011 http://dev.monetdb.org/hg/MonetDB/
  
 
'''c.''' <tt>`bootstrap`</tt> the source base  
 
'''c.''' <tt>`bootstrap`</tt> the source base  
Line 74: Line 66:
 
  ( cd MonetDB && ./bootstrap )
 
  ( cd MonetDB && ./bootstrap )
  
'''d.''' Proceed as of step d) above, replacing <tt>../MonetDB-11.5.3/</tt> by <tt>../MonetDB/</tt> durin the <tt>`configure`</tt> call in step e.
+
'''d.''' Proceed as of step d) above, replacing <tt>../MonetDB-11.7.5/</tt> by <tt>../MonetDB/</tt> during the <tt>`configure`</tt> call in step e.
  
 
=== Updating to a newer version ===
 
=== Updating to a newer version ===
  
Go (<tt>`cd`</tt>) to directory <tt>~/MonetDB-Aug2011</tt>, and execute:
+
Go (<tt>`cd`</tt>) to directory <tt>~/MonetDB-Dec2011</tt>, and execute:
 
   ( cd MonetDB && hg pull -u )
 
   ( cd MonetDB && hg pull -u )
 
to update your clone & check out of the MonetDB repository.
 
to update your clone & check out of the MonetDB repository.
Line 85: Line 77:
 
  ( cd MonetDB && ./bootstrap )
 
  ( cd MonetDB && ./bootstrap )
  
Finally, re-compile & install MonetDB by repeating steps f. & g. in directory <tt>~/MonetDB-Aug2011/BUILD</tt> as above (if necessary, <tt>`make`</tt> will automatically call <tt>`configure`</tt> with the same argument you used initially).
+
Finally, re-compile & install MonetDB by repeating steps f. & g. in directory <tt>~/MonetDB-Dec2011/BUILD</tt> as above (if necessary, <tt>`make`</tt> will automatically call <tt>`configure`</tt> with the same argument you used initially).

Revision as of 11:49, 13 February 2012

Building the Dec2011 release from source tarball

Initial install

a. Create a directory where you want to place MonetDB on your machine, and `cd` into that directory, e.g.:

mkdir ~/MonetDB-Dec2011
cd ~/MonetDB-Dec2011

b. Download the source tarball: Dec 2011 release

c. Unpack the tarball in the above created directory, e.g.:

tar xf MonetDB-11.7.5.tar.xz

d. Create a build-directory and `cd` into it, e.g.:

mkdir BUILD
cd BUILD

e. `configure` the code base for your system. You would at least want to specify a 'prefix' where to install MonetDB, e.g.:

../MonetDB-11.7.5/configure --prefix=~/MonetDB-Dec2011
  • For more `configure` options, see:
../MonetDB-11.7.5/configure --help

f. Once `configure` has finished successfully, you can compile MonetDB; still in the above created BUILD directory, call:

make -j<number_of_CPU_cores_of_your_system>

g. Once the compilation has finished successfully, you can install MonetDB; still in the BUILD directory, call:

make -j<number_of_CPU_cores_of_your_system> install

h. Finally, to use MonetDB conveniently, set the following PATHs:

prefix=~/MonetDB-Dec2011
export       PATH=$prefix/bin:$PATH
export    MANPATH=$prefix/share/man:$MANPATH
export  CLASSPATH=$prefix/share/monetdb/lib:$CLASSPATH
python_lib=$prefix/`python -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib(0,1,"")'`
export PYTHONPATH=$python_lib/site-packages:$python_lib/dist-packages:$PYTHONPATH

Updating to a newer version

In case you need / want to get and use an updated version of the Dec2011 release of MonetDB - a new tarball, potentially including bug fixes, might be available at least once a day. First, download the latest source tarball and unpack it. Then, re-compile and install MonetDB by repeating steps f. & g. in directory BUILD as above (if necessary, `make` will automatically call `configure` with the same arguments you used initially).

Building the Dec2011 release from Mercurial (HG) sources

Introduction to Mercurial (HG)

Initial install

a. Create a directory where you want to place MonetDB on your machine, and `cd` into that directory, e.g.:

mkdir ~/MonetDB-Dec2011
cd ~/MonetDB-Dec2011

b. Get a clone of the MonetDB Mercurial (HG) repository and check out the Dec2011 branch:

hg clone -u Dec2011 http://dev.monetdb.org/hg/MonetDB/

c. `bootstrap` the source base

( cd MonetDB && ./bootstrap )

d. Proceed as of step d) above, replacing ../MonetDB-11.7.5/ by ../MonetDB/ during the `configure` call in step e.

Updating to a newer version

Go (`cd`) to directory ~/MonetDB-Dec2011, and execute:

 ( cd MonetDB && hg pull -u )

to update your clone & check out of the MonetDB repository.

Then re-bootstrap the source base as in step c. above, i.e.,

( cd MonetDB && ./bootstrap )

Finally, re-compile & install MonetDB by repeating steps f. & g. in directory ~/MonetDB-Dec2011/BUILD as above (if necessary, `make` will automatically call `configure` with the same argument you used initially).