MacPorts provide PostGIS 1.1.1 but it depends on postgresql8 and we decided to go for the postgresql81 version last time. So we’ll have some handwork to get all run together.
sudo port install proj sudo port install geos
then download, extract, compile and install PostGIS 1.2.0 :
curl -O http://postgis.refractions.net/download/postgis-1.2.0.tar.gz tar xvzf postgis-1.2.0.tar.gz cd postgis-1.2.0 ./configure --libdir=/opt/local/lib/postgresql81/ --datadir=/opt/local/share/postgis --with-pgsql=/opt/local/lib/postgresql81/bin/pg_config --with-geos=/opt/local/bin/geos-config --with-prog=/opt/local/ make sudo make install
Here we are, PostGIS 1.2.0 installed on a PostgreSQL 8.1.
Now every time you need to use PostGIS functions you need to configure your database (every new database need an “enabling phase”. You can use a template, but I will not cover this part) as follow :
createlang plpgsql yourdatabase psql -f /opt/local/share/postgis/lwpostgis.sql -d your_database psql -f /opt/local/share/postgis/spatial_ref_sys.sql -d your_database
[Update (04/01/2008) : Add missing /share/ in paths. thanks Galen]
If you already had an old version of PostGIS installed and want to upgrade your databases, follow the “UPGRADING EXISTING SPATIAL DATABASES” parts of PostGIS README.postgis.