source: subversion/applications/utils/export/cgimap/README @ 19631

Last change on this file since 19631 was 19631, checked in by apmon, 11 years ago

Updated library dependency documentation to postgresql version

File size: 2.1 KB
Line 
1                              CGImap 0.5
2                              ==========
3
4Overview
5========
6
7CGImap is a C++ implementation of the OpenStreetMap "map" call as an
8FCGI process. The rails implementation of the "map" call has a few
9problems with memory - it uses a lot of it and there is a leak which
10makes it annoying to use in long-running environments, like the main
11OSM server.
12
13CGImap attempts to address these memory problems and makes it easier
14to optimise the queries, something which is also a bit of a pain to do
15in Rails.
16
17Requirements
18============
19
20CGImap depends on the following libraries. Versions used during
21development are in brackets. Other versions may work, but YMMV.
22
23  * libxml2  (2.6.32.dfsg-4ubuntu1)
24  * libpqxx  (???)
25  * libfcgi  (2.4.0-7)
26  * libboost (???)
27
28If you're running a Debian or Ubuntu system these can be installed
29using the following command:
30
31  sudo apt-get install libxml2-dev libpqxx-dev libfcgi-dev libboost-dev
32
33The build system used is GNU Make, using pkg-config to provide some of
34the flags.
35
36Setup
37=====
38
39A sample lighttpd.conf file is provided, which I've been using to
40test. No testing has been done with other FCGI servers, but if you
41find a problem please report it on the OSM trac.
42
43CGImap expects the following environment variables to be set:
44
45  * DB_HOST: Hostname or IP address of the database server.
46  * DB_NAME: Name of the database.
47  * DB_USER: Name of the user to connect as.
48  * DB_PASS: Password of the user to connect as.
49
50Optionally, DB_CHARSET can be set to the connection charset to
51use. The default is "utf8".
52
53CGImap requires permissions to SELECT and CREATE TEMPORARY on the
54Postgres server. It is recommended that a separate account is created for
55CGImap to avoid any possibility of data corruption. Care has been
56taken programming CGImap but, as with most C++ applications, there is
57the chance of an exploitable flaw leading to complete pwnage.
58
59Acknowledgements
60================
61
62CGImap contains code from and is partly based on the following:
63
64  * modosmapi (http://code.google.com/p/modosmapi/) by
65      d40cht and japplebyalis.
66  * quad_tile.c
67      (http://svn.openstreetmap.org/sites/rails_port/db/functions/maptile.c)
68      by TomH.
Note: See TracBrowser for help on using the repository browser.