source: branches/PublicaMundi_David-devel/docs/install/install-installation.rst @ 689

Last change on this file since 689 was 659, checked in by nbozon, 10 years ago

Massive update of zoo docs

File size: 9.1 KB
RevLine 
[659]1.. _install-installation:
2
3Installation on Unix/Linux
4=================
5
6For the impatient
7--------------
8
9Run the following commands from the directory where you :ref:`install-download` and extracted the ZOO Kernel source code in order to build the ``zoo_loader.cgi`` CGI program with default options.
10
11::
12
13   cd zoo-kernel
14   autoconf 
15   ./configure
16   make
17
18This should produce executables for the *zoo_loader.cgi* CGI program in the ``zoo-kernel`` directory. Copy the *zoo_loader.cgi* and *main.cfg* files to the HTTP server ``cgi`` directory and start using it.
19
20.. warning:: 
21
22   Edit ZOO-Kernel installation settings in the *main.cfg* file (set ``tmpPath`` and ``tmpUrl`` to fit your web server configuration).
23
24Debian / Ubuntu
25----------------------
26
27Use the following instructions to install `ZOO-Project <http://zoo-project.org>`__ on Debian or Ubuntu distributions.
28
29Prerequisites
30......................
31
32Using Debian
33**********************
34
35The following command should install all the required dependancies on Debian. See the :ref:`install-prereq` section for additional information.
36
37.. code-block:: guess
38
39   apt-get install flex bison libfcgi-dev libxml2 libxml2-dev curl openssl autoconf apache2 python-software-properties subversion python-dev libgdal1-dev build-essential libmozjs185-dev
40
41Using Ubuntu
42**********************
43
44On Ubuntu, use the following command first to install the required dependancies :
45
46.. code-block:: guess
47
48   sudo apt-get install flex bison libfcgi-dev libxml2 libxml2-dev curl openssl autoconf apache2 python-software-properties subversion libmozjs185-dev python-dev build-essential
49
50Then add the *UbuntuGIS* repository in order to get the latest versions of libraries
51
52.. code-block:: guess
53
54   sudo add-apt-repository ppa:ubuntugis/ppa
55   sudo apt-get update
56
57Install the geographic library as follow:
58
59.. code-block:: guess
60
61   sudo apt-get install libgdal1-dev
62
63
64Installation
65......................
66
67:ref:`install-download` ZOO-Project latest version from svn using the following command:
68
69.. code-block:: guess
70
71  svn checkout http://svn.zoo-project.org/svn/trunk zoo-project
72
73Install the *cgic* library from packages using the following command:
74
75.. code-block:: guess
76
77  cd zoo-project/thirds/cgic206/
78  make
79
80Head to the :ref:`kernel_index` directory
81
82.. code-block:: guess
83
84  cd ../../zoo-project/zoo-kernel/
85
86Create a configure file as follow:
87
88.. code-block:: guess
89
90  autoconf
91
92Run configure with the desired options, for example with the following command:
93
94.. code-block:: guess
95
96  ./configure --with-js --with-python
97
98.. note::
99   Refer to the :ref:`install-configure` section for the full list of available options
100
101Compile ZOO-Kernel as follow:
102
103.. code-block:: guess
104
105  make
106
107Copy the necessary files to the `cgi-bin` directory (as administrator user)
108
109.. code-block:: guess
110
111  cp main.cfg /usr/lib/cgi-bin
112  cp zoo_loader.cgi /usr/lib/cgi-bin
113
114Install ZOO ServiceProviders, for example the basic Python service (as administrator user)
115
116.. code-block:: guess
117
118  cp ../zoo-services/hello-py/cgi-env/*.zcfg /usr/lib/cgi-bin
119  cp ../zoo-services/hello-py/*.py /usr/lib/cgi-bin/
120
121Edit the *main.cfg* file as follow (example configuration):
122
123.. code-block:: guess
124
125  nano /usr/lib/cgi-bin/main.cfg
126  - serverAddress = http://127.0.0.1
127
128
129Test the ZOO-Kernel installation with the following requests:
130
131.. code-block:: guess
132
133   http://127.0.0.1/cgi-bin/zoo_loader.cgi?ServiceProvider=&metapath=&Service=WPS&Request=GetCapabilities&Version=1.0.0
134
135.. code-block:: guess
136
137   http://127.0.0.1/cgi-bin/zoo_loader.cgi?ServiceProvider=&metapath=&Service=WPS&Request=DescribeProcess&Version=1.0.0&Identifier=HelloPy
138
139.. code-block:: guess
140
141   http://127.0.0.1/cgi-bin/zoo_loader.cgi?ServiceProvider=&metapath=&Service=WPS&Request=Execute&Version=1.0.0&Identifier=HelloPy&DataInputs=a=myname
142
143
144.. note:: 
145
146   Such request should return well formed XML documents (OWS documents responses).
147
148.. warning:: 
149
150   If ZOO-Kernel returns an error please check the :ref:`kernel_config` and beware of the :ref:`install-prereq`.
151
152
153OpenSUSE
154----------------------
155
156:ref:`kernel_index` is maintained as a package in `OpenSUSE Build Service (OBS) <https://build.opensuse.org/package/show?package=zoo-kernel&project=Application%3AGeo>`__. RPM are thus provided for all versions of OpenSUSE Linux (11.2, 11.3, 11.4, Factory).
157
158Stable release
159......................
160
161Use the following instructions to install ZOO-Project latetst release on OpenSUSE distribution.
162
163One-click installer
164*******************
165
166A one-click installer is available `here <http://software.opensuse.org/search?q=zoo-kernel&baseproject=openSUSE%3A11.4&lang=en&exclude_debug=true>`__.
167For openSUSE 11.4, follow this direct `link <http://software.opensuse.org/ymp/Application:Geo/openSUSE_11.4/zoo-kernel.ymp?base=openSUSE%3A11.4&query=zoo-kernel>`__.
168
169Yast software manager
170*********************
171
172Add the `Application:Geo <http://download.opensuse.org/repositories/Application:/Geo/>`__ repository to the software repositories and then ZOO-Kernel can then be found in Software Management using the provided search tool.
173
174Command line (as root for openSUSE 11.4)
175****************************************
176
177Install ZOO-Kernel package by yourself using the following command:
178
179.. code-block:: guess
180
181  zypper ar http://download.opensuse.org/repositories/Application:/Geo/openSUSE_11.4/
182  zypper refresh
183  zypper install zoo-kernel
184
185Developement version
186......................
187
188The latest development version of ZOO-Kernel can be found in OBS under the project `home:tzotsos <https://build.opensuse.org/project/show?project=home%3Atzotsos>`__. ZOO-Kernel packages are maintained and tested there before being released to the Application:Geo repository. Installation methods are identical as for the stable version. Make sure to use `this <http://download.opensuse.org/repositories/home:/tzotsos/>`__ repository instead.
189
190Command line (as root for openSUSE 11.4)
191********************************************
192
193Install latest ZOO-Kernel trunk version with the following command:
194
195.. code-block:: guess
196
197  zypper ar http://download.opensuse.org/repositories/home:/tzotsos/openSUSE_11.4/
198  zypper refresh
199  zypper install zoo-kernel
200  zypper install zoo-kernel-grass-bridge
201
202Note that there is the option of adding the zoo-wps-grass-bridge package. This option will automatically install grass7 (svn trunk).
203
204
205CentOS
206----------------------
207
208Use the following instructions to install `ZOO-Project <http://zoo-project.org>`__ on CentOS distributions.
209
210Prerequisites
211......................
212
213.. code-block:: guess
214
215  yum install apache2
216  yum install build-essentials
217  yum install gcc-c++
218  yum install zlib-devel
219  yum install libxml2-devel
220  yum install bison
221  yum install openssl
222  yum install python-devel
223  yum install subversion
224
225
226Compile then install FastCGI library from source
227
228::
229
230  wget http://www.fastcgi.com/dist/fcgi.tar.gz
231  tar xzf fcgi-2.4.0.tar.gz
232  ./configure
233  make
234  make install
235  echo /usr/local/lib >> /etc/ld.so.conf.d/local.conf
236  ldconfig
237
238Compile then install the autoconf tools :
239
240::
241
242  wget http://ftp.gnu.org/gnu/autoconf/autoconf-latest.tar.gz
243  tar xzf autoconf-latest.tar.gz
244  ./configure --prefix=/usr
245  make
246  make install
247
248Compile then install the flex tool :
249
250::
251
252  wget http://downloads.sourceforge.net/project/flex/flex/flex-2.5.35/flex-2.5.35.tar.gz?r=http%3A%2F%2Fflex.sourceforge.net%2F&ts=1292529005&use_mirror=switch
253  tar xzf flex-2.5.35.tar.gz
254  cd flex-2.5.35
255  ./configure --prefix=/usr
256  make
257  make install
258
259Using the curl provided in the CentOS distribution will produce a ZOO-Kernel unable to run any
260Service. Indeed, some segmentation faults occur when trying to run ``Execute`` requests on the ZOO-Kernel,
261compiling the ZOO-Kernel setting ``USE_GDB`` flag in the ``CFLAGS`` of your ``Makefile`` will let you run
262ZOO-Kernel from gdb and be able to get more information on what is going wrong with your ZOO-Kernel.
263Doing this we can figure out that code on `line 173 <http://zoo-project.org/trac/browser/trunk/zoo-kernel/ulinet.c#L173>`__ 
264and `line 175 <http://zoo-project.org/trac/browser/trunk/zoo-kernel/ulinet.c#L175>`__ have to be commented in the
265``ulinet.c`` file to get a ZOO-Kernel working using the curl available in CentOS (curl version 7.15.5).
266If you don't apply the modification, you will get an error from a gdb session pointing
267segfault in ``Curl_cookie_clearall``.
268
269You can optionally compile then install curl from source :
270
271::
272
273  wget http://curl.haxx.se/download/curl-7.21.3.tar.bz2
274  tar xjf curl-7.21.3.tar.bz2
275  cd curl-7.21.3
276  ./configure --prefix=/usr
277  make
278  make install
279
280Compile then install Python :
281
282::
283 
284  wget http://www.python.org/ftp/python/2.6.6/Python-2.6.6.tar.bz2
285  tar xjf Python-2.6.6.tar.bz2
286  cd Python-2.6.6
287  ./configure
288  make
289  make install
290
291Compile then install your own GDAL library :
292
293::
294
295  wget http://download.osgeo.org/gdal/gdal-1.7.3.tar.gz
296  tar xzf gdal-1.7.3.tar.gz
297  cd gdal-1.7.3
298  ./configure  # add your options here
299  make
300  make install
301
302Install the Sun JAVA SDK into ``/usr/share`` then use the following command to ensure that the ``libjvm.so`` 
303will be found at runtime from any context.
304
305::
306
307  echo /usr/share/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/client/ >> /etc/ld.so.conf.d/jvm.conf
308  ldconfig
309 
Note: See TracBrowser for help on using the repository browser.

Search

Context Navigation

ZOO Sponsors

http://www.zoo-project.org/trac/chrome/site/img/geolabs-logo.pnghttp://www.zoo-project.org/trac/chrome/site/img/neogeo-logo.png http://www.zoo-project.org/trac/chrome/site/img/apptech-logo.png http://www.zoo-project.org/trac/chrome/site/img/3liz-logo.png http://www.zoo-project.org/trac/chrome/site/img/gateway-logo.png

Become a sponsor !

Knowledge partners

http://www.zoo-project.org/trac/chrome/site/img/ocu-logo.png http://www.zoo-project.org/trac/chrome/site/img/gucas-logo.png http://www.zoo-project.org/trac/chrome/site/img/polimi-logo.png http://www.zoo-project.org/trac/chrome/site/img/fem-logo.png http://www.zoo-project.org/trac/chrome/site/img/supsi-logo.png http://www.zoo-project.org/trac/chrome/site/img/cumtb-logo.png

Become a knowledge partner

Related links

http://zoo-project.org/img/ogclogo.png http://zoo-project.org/img/osgeologo.png