MacでQGIS3系をインストールするにあたって、pythonのバージョンなどで困った点とその解決法に関する覚え書きです。
###環境
Mac OS X 10.11
QGIS 3.2.2 Bonn
python 3.6.6(python2.7やpython3.7もこれ以前にインストール済み)
###QGIS3系とpython3系
Macにはデフォルトでpython2系がインストールされていますが、それに加えてpython3系をインストールしているユーザーは多いと思います。そしてQGIS3系のインストールの場合、この記事の執筆時点ではpython3.6が要求されるため、これ以外のバージョンだとインストールに失敗してしまいます。
このバージョン起因のインストールエラーが意外と厄介だったりします。
- pyenvを使わない/使いたくない人向け
pythonのバージョン管理について調べるとpyenvを使って管理する方法が検索でよくヒットしますが、それ以外の方法についてはあまり書かれていなかったので今回記事にしました。初学者向けです。
QGISのアプリケーションがどこを参照してpythonのバージョンを判定しているのかわかりませんが、たぶんpyenvを使ってglobalに3.6系でバージョン指定してあげれば、QGIS3系のインストールもできる気がします(試していませんが)。
###インストール方法
-
全体の流れ
QGISのウェブサイトからdmgファイルをダウンロードします。ディスクイメージを開くと色々ファイルが出てくるので、指定バージョンのpythonがインストール済みであれば、GDAL => QGIS の順で各インストーラー(.pkg)をクリックしてインストールすればOKです。スムーズにいけばこれだけでインストールが完了します。
尚、GDALやQGISのインストーラーを普通にダブルクリックすると「開発元が未確認のため開けません」と出てきますが、右クリックまたはControlキー+クリックから開くと先に進めます。 -
pythonのバージョン違いによるエラーについて
しかし、pythonのバージョンが指定されたもの以外だと、QGISのインストールで失敗します。python3系がインストールされていなかったり、3系だけど指定以外(今回の場合は3.6以外)が入っていたり、参照箇所が異なっていたりするとエラーになります。当たり前とはいえ、結構シビアです。
ちなみにHomebrewでpython3.6系がインストール済みであっても失敗することがあり、私の場合はターミナルで python3 -V と打つとpython3.6.6 と表示されているにも関わらず「python3.6をインストールしてください」的なエラーメッセージが流れていました。 -
指定されたバージョンのpythonをインストールする
もしpythonのバージョンでエラーが出た場合、指定されたバージョンのpythonをインストールする必要があります。
前述の通りpyenvでバージョン指定を行う方法でもいけるかと思いますが、私の場合は、python公式ページから3.6系のインストーラーパッケージをダウンロードしてインストールすることでうまくいきました。これが最もシンプルで失敗のないやり方な気がします。
ただし、別用途でpython3.7以上を使いたい場合やバージョン管理を行いたい場合はpyenvを用いて切り替えながら使うことになるのかなと思います。 -
GDALからインストールし直す
QGISのインストールで失敗し、python3を入れ直して再トライした場合、QGISインストールに成功しても、ソフトを開いた際に一部のプラグインの読み込みに失敗するエラーが生じることがあります("Couldn't load plugin 〜 ")。
これは、正しいpythonバージョンにてGDALのインストールが行われなかったことに起因するものです。
あくまでインストールは、python3.6 => GDAL => QGIS の順番で行われなければなりません。ただし、逐一アンインストールするまでもなく、GDALとQGISをそれぞれ同じように上書きインストールすればOKのようです。
###まとめ
QGIS3系のインストールでつまづいたのでメモとして書きましたが、同じようなエラーで困っている方の一助となれば幸いです。
Windowsでは問題なくインストールできたのですが、Macの場合デフォルトでPython2系が入っていることや、インストール方法によって参照場所が異なっていたりしてややこしいですね。
これからMac上でQGIS3系を色々と試してみたいと思います。
結構バグや不安定な動きが多く、しばらくは試行錯誤が続きそうな気がします。