This is an old revision of the document!
Mac OS X frameworks of various Unix image format and GIS libraries, which are the base requirements for most software available on this site. All frameworks are built for Leopard, Snow Leopard and Lion, except as noted. NOTE: Snow Leopard and Lion packages download with "snow" in the file name, and any Python modules included have both Python 2.6 (Snow) and 2.7 (Lion) versions. For older systems, see the download archive.
Only the standard surface and font backends are included, that is: image, PDF, SVG and PS, and FreeType fonts. There were problems with Quartz tests, and I figure if you're programming to use Quartz (it's not just a simple matter of telling cairo to use Quartz) you might as well program it directly with OSX APIs.
Note: cairo conflicts with the "Cairo" framework from the OS X Gtk framework package. They are not compatible. The only option right now is to choose - my framework for GRASS and MapServer, or Gtk cairo for whatever app needs it (nothing here, of course). I don't feel like changing anything as I don't really give a ____ about Gtk, but maybe I'll figure out something… or maybe not.
Standard framework build of Tcl/Tk Aqua. This will NOT be updated to 8.5.9 because that breaks compatibility with GRASS NVIZ.
This is a convenience installer that includes all the current versions of the frameworks below. There is no need to download and install these frameworks individually if this package is installed. The GDAL plugins and other extras are not included, but the numPy package is.
Note about updates: after initial installation, when an framework is updated, you may want to download the individual installer to save on download time, unless it's the GDAL framework that is updated (because that's 80% of this package) or many frameworks change.
These frameworks are all included in GDAL Complete above. But, extras are generally not included.
The UnixImageIO framework. Common graphics format libraries in a single framework. Image libraries included: GIF, JPEG, PNG, TIFF, GeoTIFF, JasPer UUID.
Includes the FTS3 search, ICU unicode, R-Tree indexing and Spatialite 3.0 & Rasterlite 1.1 extensions, and Proxy Locking, Column Metadata and Memory Management features are enabled. Pysqlite2 Python extension included.
Includes Python GDAL library and tools. Extra plugins and R package are available as separate downloads above. The GDAL Python libraries and scripts use the system Python. The GDAL framework includes a copy of the Numpy installer. R support requires the R framework and application.
The frameworks will not be updated further for older systems than those above. If you need up-to-date frameworks for older systems, use the build scripts (or build standard libraries from source for the discontinued frameworks, like Xerces).
These frameworks have build scripts available in the developer section below:
This framework has a framework build option in the source:
These frameworks are discontinued and will be built as static libraries (or not used at all), to be included as needed in other software:
These frameworks are in limbo (undecided or to be updated):
These frameworks were designed to be easy to use as both normal frameworks for OS X apps, and as normal Unix libraries. This means that most of the time, configure scripts should need little or no changes to use these frameworks. Follow normal framework procedures for including them in Xcode projects, or for using them as frameworks in other software. All of these have been checked for framework-style includes internally or between them, such as #include <PROJ/projects.h> - many were OK as is, some needed some adjustments.
In a Unix configure-make-install project, they can be used as is, without messing around with patching configure. There is a symlink folder at the top level that acts as a mini unix library environment, called 'unix'. ie in GDAL it would be
/Library/Frameworks/GDAL.framework/unix. This has the usual assortment of bin/include/lib subfolders, and symlinks with a normal
lib*.dylib style library name. You would use this 'unix' folder in configure --with options just like /usr/local. ie: