Currently QGIS uses the 'classic' GEOS API that uses a global context.
This can conflict with libraries that would also use the global context
and potentially finalize it whereas QGIS will still use it later.
See https://groups.google.com/forum/#!topic/spatialite-users/9YSU6c5AVQ4 for
such an example of such a recent issue with Spatialite.
The _r API is available since GEOS 3.1.0, which is already an ancient GEOS
version. For example, old-old-stable Ubuntu (Lucid 10.04) and Debian (squeeze)
ship with GEOS 3.1.0 or later.
Such move has also been done in GDAL 1.11
(http://lists.osgeo.org/pipermail/gdal-dev/2013-August/036877.html)
and MapServer 7.0 (https://github.com/mapserver/mapserver/issues/4733)
There's no easy way unfortunately to check at compile time that you don't
use the non _r API. I have patched my geos_c.h header to #ifdef that API (quite
painfull to do..). A postprocessing check can be done however with :
objdump -T output/lib/*.so | grep -v Base | grep GEOS | grep -v _r | grep -v "_ZN" | grep -v GEOSversion
It should return nothing.
as cmake --help-module FindPythonLibs states
If you'd like to specify the installation of Python to use, you should modify the following cache variables:
PYTHON_LIBRARY - path to the python library
PYTHON_INCLUDE_PATH - path to where Python.h is found
(please note it is PYTHON_INCLUDE_PATH (deprecated) and not PYTHON_INCLUDE_DIR (new in 2.8) since we require cmake >= 2.6.2)
- Run 'make;make qsci-pap-src; make install' to update the default .pap file in source tree
- Run 'make;make qsci-pap-master[; make install]' for local-only .pap that overrides the default .pap (when testing new bindings)
- Update console to override default .pap if master.pap is available
- Include new qgis.core.NULL attribute defined in <src>/python/__init__.py for QPyNullVariant comparisons
- Update 11-month-old default .pap
- No longer a need for hard link
- Build directory app bundle, providers, Python plugins and unit tests functional
- Adjusted resources corrected on install
- Needs testing on Windows platform
- Add QScintilla2 library version info to About dialog
- Add Mac bundling support for Qwt 6 framework and QScintilla2
- Fallback to sys or custom site-pkgs when looking for PyQt4 modules to Mac bundle