[Qgis-user] PyQGIS script segfaults with 2.12
Matthias Kuhn
matthias at opengis.ch
Wed Oct 28 03:16:04 PDT 2015
QgsApplication inherits from QApplication
(http://qgis.org/api/classQgsApplication.html)
For optimal compatibility you should create a QgsApplication rather than
a QApplication or a QCoreApplication.
from qgis.core import *
QgsApplication.setPrefixPath('/usr')
app = QgsApplication(sys.argv, False)
app.initQgis()
Best
Matthias
On 10/28/2015 10:53 AM, François-Xavier Thomas wrote:
> Interesting. The current way of initializing PyQGIS is indeed a bit
> cumbersome, it took me a while to get it working! It would be great
> for 3.0 to simplify the API.
>
> I have an additional question : do you need a QApplication or just
> QCoreApplication? I'm using classes from QgsComposer and PyQt4.QtGui
> but do not display a GUI as the scripts are entirely automatic. They
> seem to work find with QCoreApplication ; are there any potential
> issues with doing this?
>
> On 10/28/2015 10:40 AM, DelazJ wrote:
>> Hi,
>> It's discussed in this bug report : http://hub.qgis.org/issues/13494
>>
>> 2015-10-28 10:21 GMT+01:00 Luigi Pirelli <luipir at gmail.com
>> <mailto:luipir at gmail.com>>:
>>
>> I suppose QtGui.QApplication(sys.argv) would be before the
>> initQgis().... new Auth system need a QApplication to work.
>>
>> I can't remember where there were a Larry Shaffer post regarding
>> this... I can't find it now. Please ttest and give confirmation
>> in the
>> list.
>>
>> regards
>> Luigi Pirelli
>>
>>
>> **************************************************************************************************
>> * LinkedIn: https://www.linkedin.com/in/luigipirelli
>> * Elance: https://www.elance.com/s/edit/luigipirelli/
>> * GitHub: https://github.com/luipir
>> * Stackexchange:
>> http://gis.stackexchange.com/users/19667/luigi-pirelli
>> * Mastering QGIS:
>> https://www.packtpub.com/application-development/mastering-qgis
>>
>> **************************************************************************************************
>>
>>
>> On 28 October 2015 at 10:01, Alessandro Pasotti <apasotti at gmail.com
>> <mailto:apasotti at gmail.com>> wrote:
>> > 2015-10-28 9:57 GMT+01:00 François-Xavier Thomas
>> > <francois-xavier.thomas at airinov.fr
>> <mailto:francois-xavier.thomas at airinov.fr>>:
>> >>
>> >> Hello all,
>> >>
>> >> I've just upgraded to QGIS 2.12, in order to test some of my
>> scripts with
>> >> the new version, and they just happen to segfault immediately
>> when I call
>> >> QgsApplication.initQgis() in 2.12.
>> >>
>> >> I've checked the latest docs[1], and the 3 lines mentioned at
>> the
>> >> beginning are enough to crash the Python interpreter:
>> >>
>> >> from qgis.core import *
>> >> QgsApplication.setPrefixPath("/usr", True)
>> >> QgsApplication.initQgis()
>> >>
>> >
>> > Try to add QtGui.QApplication(sys.argv) such as:
>> >
>> > #Initialize QGIS
>> > core.QgsApplication.setPrefixPath("/usr", True)
>> > core.QgsApplication.initQgis()
>> > # On 2.10 crashes without!
>> > QtGui.QApplication(sys.argv)
>> >
>> >
>> > I thought it was fixed in 2.12 (and master).
>> >
>> >
>> > --
>> > Alessandro Pasotti
>> > w3: www.itopen.it <http://www.itopen.it>
>> >
>> > _______________________________________________
>> > Qgis-user mailing list
>> > Qgis-user at lists.osgeo.org <mailto:Qgis-user at lists.osgeo.org>
>> > http://lists.osgeo.org/mailman/listinfo/qgis-user
>> _______________________________________________
>> Qgis-user mailing list
>> Qgis-user at lists.osgeo.org <mailto:Qgis-user at lists.osgeo.org>
>> http://lists.osgeo.org/mailman/listinfo/qgis-user
>>
>>
>>
>>
>> _______________________________________________
>> Qgis-user mailing list
>> Qgis-user at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/qgis-user
>>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.osgeo.org/pipermail/qgis-user/attachments/20151028/52b450fa/attachment.sig>
More information about the Qgis-user
mailing list