I think I got it.  There was a change in the Spatialite code that I missed in 
my Sqlite framework.  At some point multiple different uses of OMIT_GEOS and 
OMIT_PROJ were introduced.  In the past, tests in the code were like:

#if OMIT_GEOS == 0
  # code for *including* GEOS support
#endif

But now there are also tests like:

#ifndef OMIT_GEOS
  # code for *including* GEOS support
#endif

If I set OMIT_GEOS=0, then OMIT_GEOS is still defined, and the second test form 
fails.

QGIS compilation doesn't set OMIT_GEOS or OMIT_PROJ.  The only thing that's 
missed in the first form then are the GEOS and PROJ headers, which still seems 
to work without errors, so maybe they aren't actually used in the spatialite 
code.  There is also an OMIT_EPSG, but that still only uses the first test form.

I updated my SQLite framework and now Identify/Select works, and I think also 
the speed issue may be solved.  Download is online (still uploading the GDAL 
Complete, so download the individual Sqlite framework).


On Mar 19, 2011, at 5:03 PM, Cline, Royce L. wrote:

> The Identify Tool and Selection Tool problem also exist with QGIS 1.6 built 
> with SQLite3_Framework-3.7.4-2. Installing the older 
> SQLite3_Framework-3.6.23-1 after installing the current frameworks fixes the 
> Identify Tool problem with both QGIS 1.6 and 1.7 that were built with 
> SQLite3_Framework-3.7.4-2. The install of  SQLite3_Framework-3.6.23-1 must be 
> enabling a feature not enabled in the current SQLite framework.
> 
> Royce
> 
> 
> On Mar 19, 2011, at 4:38 PM, William Kyngesburye wrote:
> 
>> It does exactly what it says - uses the spatialite source code bundled with 
>> QGIS source (including sqlite source).  So it will ignore the spatialite and 
>> sqlite options you give it.
>> 
>> It's possible I missed something in my sqlite/spatialite framework, or some 
>> sqlite option I enabled (maybe one of the Mac options) is incompatible with 
>> spatialite, but they are the same versions.
>> 
>> With internal, it looks like only rtree is enabled.  But I enable also WAL 
>> (new) and a few other options that are also in the older sqlite framework.  
>> Though that doesn't explain why QGIS 1.6 still works with the current sqlite 
>> framework (with WAL), maybe coincident changes elsewhere.  I suppose I can 
>> try enabling sqlite options one-by-one to see what's causing the problem.
>> 
>> There is an open bug very similar to this, but it affects PPC Macs only.  It 
>> seems to be a QT Carbon vs. Cocoa thing, but I'm not totally sure:
>> 
>> http://trac.osgeo.org/qgis/ticket/2760
>> 
>> On Mar 19, 2011, at 3:51 PM, Cline, Royce L. wrote:
>> 
>>> I changed -D WITH_INTERNAL_SPATIALITE=FALSE in the cmake command to TRUE. 
>>> With my build of QGIS 1.7 r15529, both the Identify Tool and the selection 
>>> tools now work with SpatiaLite layers. Using latest frameworks. This 
>>> doesn't fix the slow quit problem. What is WITH_INTERNAL_SPATIALITE doing?
>>> 
>>> Royce
>>> 
>>> 
>> 
>> -----
>> William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
>> http://www.kyngchaos.com/
>> 
>> Theory of the Universe
>> 
>> There is a theory which states that if ever anyone discovers exactly what 
>> the universe is for and why it is here, it will instantly disappear and be 
>> replaced by something even more bizarrely inexplicable.  There is another 
>> theory which states that this has already happened.
>> 
>> -Hitchhiker's Guide to the Galaxy 2nd season intro
>> 
>> 
> 
> Royce Cline
> State Water Commission
> 900 East Blvd.
> Bismarck, ND 58504
> 
> ph. 701-328-2754
> rcl...@nd.gov
> 
> 
> 

-----
William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
http://www.kyngchaos.com/

"Time is an illusion - lunchtime doubly so."

- Ford Prefect


_______________________________________________
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer

Reply via email to