README | README | |||
---|---|---|---|---|
--------------------- libspatialite ------------------------ | --------------------- libspatialite ------------------------ | |||
PLEASE read the following information. | PLEASE read the following information. | |||
1 - Installation | 1 - Installation | |||
2 - Required dependencies | 2 - Required dependencies | |||
3 - Build notes | 3 - Build notes | |||
3.1: Building on Linux | 3.1: Building on Linux | |||
3.2: Building on MacOsX | 3.2: Building on Mac OS X | |||
3.3: Building on Windows | 3.3: Building on Windows | |||
3.3.1: using MinGW / MSYS | 3.3.1: using MinGW / MSYS | |||
3.3.2: using Visual Studio .NET | 3.3.2: using Visual Studio .NET | |||
===================================================================== | ===================================================================== | |||
1 - Installation: | 1. Installation: | |||
================= | ================= | |||
The default destination path prefix for installed files is /usr/local. | The default destination path prefix for installed files is /usr/local. | |||
Results from the installation script will be placed into subdirectories | Results from the installation script will be placed into subdirectories | |||
include and lib. If this default path prefix is proper, then execute: | include and lib. If this default path prefix is appropriate, then execute: | |||
./configure | ./configure | |||
If another path prefix is required, then execute: | If another path prefix is required, then execute: | |||
./configure --prefix=/my/path | ./configure --prefix=/my/path | |||
In either case, the directory of the prefix path must exist and be | In either case, the directory of the prefix path must exist and be | |||
writable by the installer. | writable by the installer. | |||
skipping to change at line 43 | skipping to change at line 43 | |||
make | make | |||
make install | make install | |||
Or even better, you can *strip* any executable binary, in order | Or even better, you can *strip* any executable binary, in order | |||
to eliminate any debugging symbol, and thus widely reducing | to eliminate any debugging symbol, and thus widely reducing | |||
their size: | their size: | |||
make install-strip | make install-strip | |||
2- Required dependencies: | 2. Required dependencies: | |||
========================= | ========================= | |||
The main external dependencies needed in order to build 'libspatialite' | The main external dependencies needed in order to build 'libspatialite' | |||
are the SQLITE3, PROJ.4 and GEOS devel-packages. | are: | |||
- SQLite 3 (http://www.sqlite.org) | ||||
This is a hard dependency - you can't build libspatialite without it. S | ||||
QLite | ||||
version 3.7.3 or later is strongly preferred - if you have an earlier | ||||
version then you will need to pass --enable-geocallbacks=no to the | ||||
./configure script. | ||||
- PROJ.4 (http://trac.osgeo.org/proj/) | ||||
This is strongly recommended, unless you have a particular purpose in m | ||||
ind | ||||
for your libspatialite build, and know that you won't need it. It is us | ||||
ually | ||||
available as a package, and libspatialite is pretty flexible about vers | ||||
ions. | ||||
- GEOS (http://trac.osgeo.org/geos/) | ||||
This is strongly recommended, unless you have a particular purpose in m | ||||
ind | ||||
for your libspatialite build, and know that you won't need it. It is us | ||||
ually | ||||
available as a package, but libspatialite will have more capability if | ||||
you | ||||
use version 3.3.0 or later so make sure that the package is recent enou | ||||
gh. | ||||
Use --enable-geosadvanced=no argument to the ./configure script if you | ||||
want | ||||
to use an earlier version of GEOS. | ||||
- FreeXL (http://www.gaia-gis.it/FreeXL/) | ||||
This is recommended if you want to be able to import data from Microsof | ||||
t | ||||
Excel format (.xls suffix) files. If you do not wish to use it, you wil | ||||
l | ||||
need to pass --enable-freexl=no to the ./configure script. Version 0.0. | ||||
4 | ||||
or later is required. | ||||
Note that you need development code (e.g. -dev packages on Debian Linux and | ||||
derivatives such as Ubuntu, or -devel packages on most other Linux | ||||
distributions). | ||||
ICONV [Windows] | ICONV [Windows] | |||
--------------- | --------------- | |||
If building on Windows, then a further dependency has to be satisfied, | When building on Windows, then you also need to provide iconv to ensure tha | |||
the ICONV one. | t | |||
PLEASE NOTE: this one is not an issue when building on Linux or MacOsX, | appropriate character set conversions are available. This dependency is not | |||
because these systems offers a "native" ICONV support (this latter being | usually an issue when building on Linux or Mac OS X, because these systems | |||
a standard system component). | provide iconv as a standard component. | |||
For Windows the preferred solution is to download and install the pre-built | For Windows the preferred solution is to download and install the pre-built | |||
ICONV binaries and related files from: | iconv binaries and related files from: | |||
http://gnuwin32.sourceforge.net/packages/libiconv.htm | http://gnuwin32.sourceforge.net/packages/libiconv.htm | |||
3 - Build notes | 3 - Build notes | |||
=============== | =============== | |||
3.1: Building on Linux | 3.1: Building on Linux and similar systems | |||
------------------------------------------ | ||||
Building 'libspatialite' on Linux does not require any special | Building libspatialite on Linux and similar systems such as BSD or other Un | |||
setting; we'll suppose you have unpacked the sources as | ix | |||
./libspatialite-2.4.0 | variants does not require any special settings. If you have unpacked the so | |||
urces | ||||
as ./libspatialite-3.0.0, then the required steps are: | ||||
# cd libspatialite-2.4.0 | # cd libspatialite-3.0.0 | |||
# ./configure | # ./configure | |||
# make | # make | |||
# sudo make install | # sudo make install | |||
# or (in order to save some disk space) | # or (in order to save some disk space) | |||
# sudo make install-strip | # sudo make install-strip | |||
3.2: Building on MacOsX | 3.2: Building on Mac OS X | |||
------------------------- | ||||
Building 'libspatialite' on MacOsX is quite the same as for Linux. | Building 'libspatialite' on Mac OS X very similar to Linux. You simply have | |||
You simply have to set explicitly some ENV variable. | to | |||
We'll suppose you have unpacked the sources as | set explicitly some environment variables. If you have unpacked the sources | |||
./libspatialite-2.4.0 | as | |||
./libspatialite-3.0.0, then the required steps are: | ||||
# cd libspatialite-2.4.0 | # cd libspatialite-3.0.0 | |||
# export "CFLAGS=-I/opt/local/include" | # export "CFLAGS=-I/opt/local/include" | |||
# export "LDFLAGS=-I/opt/local/lib" | # export "LDFLAGS=-I/opt/local/lib" | |||
# ./configure | # ./configure | |||
# make | # make | |||
# sudo make install | # sudo make install | |||
# or (in order to save some disk space) | # or (in order to save some disk space) | |||
# sudo make install-strip | # sudo make install-strip | |||
IMPORTANT NOTICE: this will build an executable for your | IMPORTANT NOTICE: this will build an executable for your specific platform. | |||
specific platform. i.e. when building on a PPC Mac, | That is, when building on a PPC Mac, the resulting binary will be be for PP | |||
resulting binary will be targeted to run on PPC anyway. | C. | |||
And when building on Intel Mac, resulting binary will | Similarly, when building on Intel Mac, resulting binary will be for Intel. | |||
run on Intel target. | ||||
3.3: building on Windows | 3.3: Building on Windows | |||
------------------------ | ------------------------ | |||
On Windows systems you can choose using two different compilers: | On Windows systems you can choose using two different compilers: | |||
- MinGW / MSYS | - MinGW / MSYS | |||
this represents a smart porting of a minimalistic Linux-like | This represents a smart porting of a minimalistic Linux-like | |||
devel-toolkit | development toolkit | |||
- Microsoft Visual Studio .NET | - Microsoft Visual Studio .NET | |||
this one is the standard platform devel-toolkit | This is the standard platform development toolkit from Microsoft. | |||
3.3.1: using MinGW / MSYS | 3.3.1: using MinGW / MSYS | |||
------------------------- | ------------------------- | |||
We suppose you have already installed the MinGW compiler and the MSYS shell . | We assume that you have already installed the MinGW compiler and the MSYS s hell. | |||
Building 'libspatialite' under Windows is then more or less like building | Building 'libspatialite' under Windows is then more or less like building | |||
on any other UNIX-like system. We'll suppose you have unpacked the sources | on any other UNIX-like system. If you have unpacked the sources as | |||
as | C:\libspatialite-3.0.0, then the required steps are: | |||
C:\libspatialite-2.4.0 | ||||
$ cd c:/libspatialite-2.4.0 | $ cd c:/libspatialite-3.0.0 | |||
$ export "CFLAGS=-I/usr/local/include" | $ export "CFLAGS=-I/usr/local/include" | |||
$ export "LDFLAGS=-L/usr/local/lib" | $ export "LDFLAGS=-L/usr/local/lib" | |||
$ ./configure --target=mingw32 | $ ./configure --target=mingw32 | |||
$ make | $ make | |||
$ make install-strip | $ make install-strip | |||
$ or (in order to save some disk space) | $ or (in order to save some disk space) | |||
$ make install-strip | $ make install-strip | |||
3.3.2: using Microsoft Visual Studio .NET | 3.3.2: using Microsoft Visual Studio .NET | |||
----------------------------------------- | ----------------------------------------- | |||
We suppose you have already installed Visual Studio enabling the command | We assume that you have already installed Visual Studio enabling the comman | |||
line tools [you are expected to use the command prompt shell]. | d | |||
We'll suppose you have unpacked the sources as | line tools. Note that you are expected to the Visual Studio command prompt | |||
C:\libspatialite-2.4.0 | shell | |||
rather than the GUI build environment. If you have unpacked the sources as | ||||
C:\libspatialite-3.0.0, then the required steps are: | ||||
> cd c:\libspatialite-2.4.0 | > cd c:\libspatialite-3.0.0 | |||
> nmake /f makefile.vc | > nmake /f makefile.vc | |||
> nmake /f makefile.vc install | > nmake /f makefile.vc install | |||
Please note: standard definitions in 'makefile.vc' assumes: | Please note: standard definitions in 'makefile.vc' assumes: | |||
- enabling PROJ | - enabling PROJ | |||
- disabling GEOS | - disabling GEOS | |||
If you want to alter this 'basic' behaviour you have then to | If you want to alter the default behaviour then make modifications in | |||
adapt 'makefile.vc'. | 'makefile.vc'. Also note that 'libspatialite-geos.def' contains those exter | |||
The 'libspatialite-geos.def' file contains any external symbol | nal | |||
to be exported from the DLL when you build including GEOS. | symbols to be exported from the DLL when you build GEOS. | |||
End of changes. 23 change blocks. | ||||
41 lines changed or deleted | 87 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |