Difference between revisions of "Install"

From AQUAgpusph
Jump to: navigation, search
m (Fixed 2 typos)
(Updated to AQUAgpusph 2.2)
 
(8 intermediate revisions by the same user not shown)
Line 9: Line 9:
 
== Installing from the source code ==
 
== Installing from the source code ==
  
=== AQUAgpusph-2.0 ===
+
=== AQUAgpusph-2 ===
  
 
==== General ====
 
==== General ====
  
Currently AQUAgpusph-2.0 can be considered a stable version of AQUAgpusph, however several changes are becoming implemented and integrated, and therefore it is not a finished version (see [[#Subversion 2.1]]). Of course, AQUAgpusph-2.0 is the next release candidate, and it will be integrated in the master branch soon.
+
AQUAgpusph-2 is the last stable version of AQUAgpusph, and therefore is the recommended version for most users.
  
 
==== Downloading ====
 
==== Downloading ====
  
To download AQUAgpusph-2.0 you must install [http://git-scm.com/:Git] in your system. In [https://www.gnu.org GNU]/[http://www.linux.com Linux]/[https://www.debian.org/ Debian] based Operating Systems you can type the following command (as superuser):
+
To download AQUAgpusph-2 you must install [http://git-scm.com/:Git] in your system. In [https://www.gnu.org GNU]/[http://www.linux.com Linux]/[https://www.debian.org/ Debian] based Operating Systems you can type the following command (as superuser):
  
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
Line 23: Line 23:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
After installing [http://git-scm.com/:Git] in your system, you can download AQUAgpusph-2.0 typing (this time superuser is not required):
+
After installing [http://git-scm.com/:Git] in your system, you can download AQUAgpusph-2 typing (this time superuser is not required):
  
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
git clone -b 2.0 "https://github.com/sanguinariojoe/aquagpusph.git"
+
git clone "https://github.com/sanguinariojoe/aquagpusph.git"
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
==== Installing dependencies ====
 
==== Installing dependencies ====
  
AQUAgpusph-2.0 has a number of dependencies that should be satisfied before compiling it:
+
AQUAgpusph-2 has a number of dependencies that should be satisfied before compiling it:
  
 
* [http://www.cmake.org CMake]
 
* [http://www.cmake.org CMake]
Line 38: Line 38:
 
* [http://xerces.apache.org/xerces-c Xerces-C]
 
* [http://xerces.apache.org/xerces-c Xerces-C]
 
* [http://www.khronos.org/opencl OpenCL]
 
* [http://www.khronos.org/opencl OpenCL]
 +
* [http://muparser.beltoforion.de muparser]
 
* [http://eigen.tuxfamily.org Eigen3]
 
* [http://eigen.tuxfamily.org Eigen3]
 
* [http://www.gnu.org/software/libmatheval libmatheval]
 
* [http://www.gnu.org/software/libmatheval libmatheval]
* [http://llvm.org LLVM]
+
* [http://llvm.org LLVM] (>= 3.5)
* [http://clang.llvm.org CLang]
+
* [http://clang.llvm.org CLang] (>= 3.5)
  
And some other that are not mandatory, but highly recommended (Some AQUAgpusph features are depending on them):
+
In [https://www.gnu.org GNU]/[http://www.linux.com Linux]/[https://www.debian.org/ Debian] based Operating Systems they can be installed typing (as superuser):
 +
 
 +
<syntaxhighlight lang="bash">
 +
apt-get install cmake python-dev python-numpy libxerces-c-dev ocl-icd-opencl-dev \
 +
libeigen3-dev libmuparser-dev llvm-dev libclang-dev
 +
</syntaxhighlight>
 +
 
 +
There are also some other non-mandatory (but highly recommended) dependencies:
  
 
* [http://www.gnu.org/software/ncurses/ncurses.html Ncurses]
 
* [http://www.gnu.org/software/ncurses/ncurses.html Ncurses]
 
* [http://www.vtk.org VTK]
 
* [http://www.vtk.org VTK]
  
In [https://www.gnu.org GNU]/[http://www.linux.com Linux]/[https://www.debian.org/ Debian] based Operating Systems they can be installed typing (as superuser):
+
Such optional dependencies can be installed with the following command (take care, the versions may change):
  
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
apt-get install python-dev python-numpy libxerces-c-dev ocl-icd-opencl-dev libeigen3-dev libmatheval-dev llvm-dev libclang-dev
+
apt-get install libncurses5-dev libvtk5-dev
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
==== Compiling ====
 
==== Compiling ====
  
AQUAgpusph can be compiled either in the 3D version (which will generate an executable called AQUAgpusph) or in the 2D one (which will generate an executable called AQUAgpusph2D). Both version can be compiled/installed in the same system, but during this document we are assuming that 3D version is selected (you can toggle to 2D version with -DAQUAGPUSPH_3D=OFF cmake flag).
+
AQUAgpusph can be compiled either in the 3D version (which will generate an executable called AQUAgpusph) or in the 2D one (which will generate an executable called AQUAgpusph2D). Both versions can be compiled/installed in the same system, but during this document we are assuming that 3D version is selected (you can toggle to 2D version with -DAQUAGPUSPH_3D=OFF cmake flag).
  
Hence, to compile AQUAgpusph-2.0 (3D version) you can type (without superuser privileges):
+
Hence, to compile AQUAgpusph-2 (3D version) you can type (without superuser privileges):
  
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
Line 72: Line 80:
 
==== Installing ====
 
==== Installing ====
  
You can install AQUAgpusph executing as superuser the following command (execute it only if [[#Compiling|compilation process]] has gone right):
+
You can install AQUAgpusph executing as superuser the following command (execute it only if [[#Compiling|compilation process]] has finished without errors):
  
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
Line 78: Line 86:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
It will install the software package in /usr/share/aquagpusph folder, the executable in /usr/bin, and the client and server libraries in /usr/lib.
+
It is installing the software package at /usr/share/aquagpusph folder, the executable at /usr/bin, and the client and server libraries at /usr/lib.
  
 
==== Suggested packages ====
 
==== Suggested packages ====
Line 94: Line 102:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
==== Subversion 2.1 ====
+
=== Developing version ===
  
The branch 2.1 is currently the most actively developed one, where the latest changes are implemented. When such changes become considered stable, they are merged into the root branch 2.0.
+
The currently developing branch of AQUAgpusph is the 3 one.
  
To download, compile, and install the branch AQUAgpusph-2.1 the same process described above should be applied, considering the following differences:
+
To download, compile, and install the branch AQUAgpusph-3 the same process described above should be applied, considering the following differences:
  
 
* To download the source code the following command will be typed:
 
* To download the source code the following command will be typed:
  
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
git clone -b 2.1 "https://github.com/sanguinariojoe/aquagpusph.git"
+
git clone -b 3 "https://github.com/sanguinariojoe/aquagpusph.git"
</syntaxhighlight>
+
 
+
* [http://www.gnu.org/software/libmatheval libmatheval] dependency has been replaced by [http://muparser.beltoforion.de muparser]. In [https://www.gnu.org GNU]/[http://www.linux.com Linux]/[https://www.debian.org/ Debian] based Operating Systems it can be installed with the following command:
+
 
+
<syntaxhighlight lang="bash">
+
apt-get install muparser-dev
+
 
</syntaxhighlight>
 
</syntaxhighlight>

Latest revision as of 11:54, 29 December 2015

Introduction

Even though AQUAgpusph can be compiled in a wide variety of Operating Systems, we are just officially supporting GNU/Linux based ones.

Precompiled packages

Currently AQUAgpusph is not providing precompiled packages.

Installing from the source code

AQUAgpusph-2

General

AQUAgpusph-2 is the last stable version of AQUAgpusph, and therefore is the recommended version for most users.

Downloading

To download AQUAgpusph-2 you must install [1] in your system. In GNU/Linux/Debian based Operating Systems you can type the following command (as superuser):

apt-get install git

After installing [2] in your system, you can download AQUAgpusph-2 typing (this time superuser is not required):

git clone "https://github.com/sanguinariojoe/aquagpusph.git"

Installing dependencies

AQUAgpusph-2 has a number of dependencies that should be satisfied before compiling it:

In GNU/Linux/Debian based Operating Systems they can be installed typing (as superuser):

apt-get install cmake python-dev python-numpy libxerces-c-dev ocl-icd-opencl-dev \
libeigen3-dev libmuparser-dev llvm-dev libclang-dev

There are also some other non-mandatory (but highly recommended) dependencies:

Such optional dependencies can be installed with the following command (take care, the versions may change):

apt-get install libncurses5-dev libvtk5-dev

Compiling

AQUAgpusph can be compiled either in the 3D version (which will generate an executable called AQUAgpusph) or in the 2D one (which will generate an executable called AQUAgpusph2D). Both versions can be compiled/installed in the same system, but during this document we are assuming that 3D version is selected (you can toggle to 2D version with -DAQUAGPUSPH_3D=OFF cmake flag).

Hence, to compile AQUAgpusph-2 (3D version) you can type (without superuser privileges):

cd aquagpusph && 
cmake -DAQUAGPUSPH_3D=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr . && 
make

Testing

AQUAgpusph can be tested without installing it, take a look on how to execute the dam-break example. Such example is using some additional software, see Suggested packages.

Installing

You can install AQUAgpusph executing as superuser the following command (execute it only if compilation process has finished without errors):

make install

It is installing the software package at /usr/share/aquagpusph folder, the executable at /usr/bin, and the client and server libraries at /usr/lib.

Suggested packages

In addition to the dependencies discussed in Installing dependencies, there are some additional related software that you may want to install (some of these packages are used in the examples, for instance to plot results)

In GNU/Linux/Debian based Operating Systems they can be installed by executing (as superuser):

apt-get install paraview python-matplotlib python-qt4

Developing version

The currently developing branch of AQUAgpusph is the 3 one.

To download, compile, and install the branch AQUAgpusph-3 the same process described above should be applied, considering the following differences:

  • To download the source code the following command will be typed:
git clone -b 3 "https://github.com/sanguinariojoe/aquagpusph.git"