QGIS3をMacにインストールしますか?


30

Kyngchaosインストーラーはpython3を見つけられません。HomeBrewを使用してpython3をインストールしましたが、/usr/local/Cellar/python/3.6.4_4/Frameworks/Python.framework/Versions/3.6/bin/python3.6

python3がインストールされていることを認識するようにQGISインストーラーに指示するにはどうすればよいですか?

以前にHomeBrewを使用してGDALをインストールしていたので、状況を改善できると考えて再インストール(または最終的に別のバージョンをインストール)を試みましたが、QGIS3インストーラーはまだPython 3を見つけることができません。

インストールエラーは、インストーラーが開くとすぐに表示されるポップアップで、「python3 QGISにはPython 3.6が必要です」と表示されます。

Mac以外のユーザーの場合、QGISのインストーラーを提供するためにKyngchaosに依存しているようで、v3のインストーラーをリリースしたばかりです。

更新:以下の質問に答えました。QGISインストーラー/ QGISを正しいバージョン(私は確かにそうではありません)に向けるのに十分な知識がない限り、HomeBrewを使用しないでください。


Kyngchaosインストーラーはどこにありますか?どこにも見つかりません。
アレックスリース

彼はリンクを更新していないので、kyngchaos.com / files / software / qgis / QGIS
Greg

彼のウェブページではまだ宣伝されていませんか?
アレックスリース

2
「QGIS 2.18.15-4」はkyngchaos.com/software/qgisで2回繰り返され、最初は「QGIS-3.0.0-1」である必要があります。コピーアンドペーストのエラーだと思います。つまり、彼は古いリンクなどをコピーして、更新するのを忘れていました。これをどうやって推測するのでしょうか?
グレッグ

4
本日(2019年3月12日)、kyngchaos.com / software / qgisのリンクが更新されました。
グレッグ

回答:


35

新しいアップデート

QGIS3はosgeoの自作タップからインストールできるようになりました。

brew tap osgeo/osgeo4mac
brew install qgis

次にqgis、起動するターミナルを入力し、ドックメニューアイコンを固定して、今後の起動を簡素化します。

インストールコンソールのログにはqgis、アプリケーションディレクトリへのシンボリックリンクの例も含まれています。

現在のいくつかの問題によりulimit -n 1024Too many open files @ rb_sysopen - /usr/local/var/homebrew/locks/xmlto.formula.lockエラーの回避策として端末から実行する必要がある場合があります。またbrew install qgis、すべてのパッケージがお互いを見つけるために複数回実行する必要がある場合があります。

古い更新

(この方法では、バージョンが変更されたときにシンボリックリンクを更新する必要があります。つまり、理想的ではありません)

homebrewを使用する人にとっては、おそらくシンボリックリンクを使用する方が良いでしょう。さもないと、あらゆる種類の大混乱が発生する可能性があります。例えば、公式Pythonのバイナリは、あなたの修正する~./bash_profileようにpython3し、pip3醸造にはもはやポイント...

私の場合、(@ Evenfireが提供する回答の議論の行に沿って)homebrewバージョンをシンボリックリンクしました:

sudo ln -s /usr/local/Cellar/python/3.6.5/Frameworks/Python.framework /Library/Frameworks/Python.framework

次に、QGIS3は、特定のpythonパッケージが欠落していると不平を言いました。

pip3 install owslib PyYaml psycopg2 jinja2 pygments plotly

またgdal、文句を言うかもしれませんが、私の場合は単にbrewを使用しました。

brew install gdal

元の

(この方法は、醸造ユーザーにはお勧めしません!)

私もbrew3でpython3をインストールしましたが、同じ困難に直面しています。

動作しているように見えるのは、にインストールする公式のPythonバイナリをインストールすること/Library/Frameworks/Python.framework/Versions/3.6/bin/python3です。

試行錯誤から、これは1 Install GDAL Complete.pkgパッケージをインストールする前に実行する必要があります。そうしないと、間違ったpythonに対してインストールされ、QGIS 3はpythonパッケージが見つからないことを訴えます。

実験する時間がある人は、おそらくbrew(または他の)python3を使用して直接移動するためにシンボリックリンクを試すことができます。


ありがとう!「1 Install GDAL Complete.pkg」の直前にpythonをインストールすると、私にとってはうまくいき、「module osgeo not found」というエラーが解決されました。
ハビエルファハルド

GDALもインストールされていhomebrewますか?シンボリックリンクを作成しましたpythonが、インストーラーはでインストールしたものを尋ねてGDAL2.2homebrewます。
ドゥッチョ・A

私の場合gdal、homebrew をインストールしていません。私の理解では、QGISはKyngChaosのバージョンに特に依存しているということです(残念ながら!)。そのため、QGISで提供されるgdalをインストールする必要があり、それが機能する可能性があります。
songololo

1
新しいpython3.7のバイナリのインストールは、最新のQGISインストーラーでサポートされていないことに気付きました!python3.6.6が必要です。この回答で提供したリンクからダウンロードできます。
ハビエルファハルド

2
これは非常にばかげた質問かもしれませんが、homebrewでqgisをインストールしたら、どのように実行しますか?考え出したのqgis3はコマンドです。
フアンフランシスコサルダリアガ

28

Python3をHomebrewとともにインストールしている場合、シンボリックリンクを使用してインストーラーのニーズに準拠できます(@shongololoの提案どおり)。

これは、インストーラはのpython3は(おかげで@shongololo)にインストール必要があり、そうです:/Library/Frameworks/Python.framework/Versions/3.6/bin/python3

(Homebrewを使用してpython3をインストールし、このパートを実行します)

Cellarマシン上のディレクトリを見つけます。私の場所:/usr/local/Cellar。次に、このディレクトリを見つけます/usr/local/Cellar/python3/3.x.y_z/Frameworks/Python.framework3.x.y_z使用するpython3バージョンはどこですか、私にとっては3.6.4_2)。これは、インストーラーが検索するディレクトリです。シンボリックリンクを作成して、インストーラーが参照しているディレクトリからこのディレクトリにリンクする必要があります。

lnコマンド(ln -s TARGET_FILE_TO_LINK_TO LINK_NAME) を使用するln -s /usr/local/Cellar/python3/3.x.y_z/Frameworks/Python.framework /Library/Frameworks/Python.frameworkと、トリックが実行されます。あなたは確かにする必要がありsudoます。

これは私のために働いた。

(「Cellar」は、すべての「樽」が行く場所です。Homebrewはパッケージを(Cellar内の)独自のディレクトリにインストールし、ファイルを/ usr / local /にシンボリックリンクします。[ Ryan Kullaのブログより ]


この情報をありがとう。「デフォルト」インストーラーですでに修正しました。私のために動作する他の何かのためにPythonを必要としないので。私は一般的に一貫性のためにHomebrewを使用することを好みます。また、Appleにはデフォルトでv2がインストールされています。2つのインストーラー(Homebrewとpythonサイトからの1つ)を使用することのトレードオフはありましたか?Homebrewはpythonをより簡単に更新し続けると思います。そして、簡単にアンインストールできます。他のインストール方法でそれを行う方法がわかりません。Homebrewバージョンに戻る方法を知っているので、Homebrewバージョンに戻ろうと考えました。
グレッグ

@greg homebrewは、アンインストールなど、管理がはるかに簡単です。また、さまざまなパッケージの相互依存関係が非常にうまく相互リンクされます。
songololo

1
@evenfireは素晴らしい説明をありがとう。brew info python既存の
作成済み

4
最近醸造されたヘッズアップはデフォルトpythonをv3に変更したため、最近Homebrewを更新/アップグレードした人には、上記のパスに含まれるものpythonと含まれないものがありますpython3
-songololo

4
フレームワークファイルをanaconda pythonに接続するにはどうすればよいですか?(私はアナコンダのディレクトリでpython.frameworkを見つけることができません)
natsuapo

5

QGISインストーラーに付属のリンクをたどってhttps://www.python.org/downloads/にアクセスし、その方法でpython3をインストールしました。その後、QGISインストーラーは満足しました。

これは、ここのコメントと矛盾しているようです:

「QGISはpythonライブラリをリンクするため、python.org Python 3.6をインストールする必要があります。別のpython 3インストールを置き換えることはできません。申し訳ありませんが、そうです。」

http://www.kyngchaos.com/blog/2018/20180315_qgis_3_must_use_python.org_python_3に投稿されています。William Kyngesburyに連絡する方法を知っていれば、そうするでしょう。彼は素晴らしいサービスを行っています。


4

依存関係のためだけpyenvに使用する別のバージョンとシンボリックリンクbrew

推奨されるインストール場所pyenv~/.pyenv$HOME/.pyenv)ですが、任意の場所を指定できます。

  1. クローンpyenvリポジトリ(おそらく適応~/.pyenv/path/to/pyenv

    git clone https://github.com/pyenv/pyenv.git ~/.pyenv
  2. に設定pyenvします~/.bash_profile(おそらく、適応$HOME/.pyenv/path/to/pyenvます。3行目は.bash_profile、将来の更新後でも最後の1行のままにする必要があります)

    echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
    echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
    echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.bash_profile
  3. シェルを再起動します

    exec "$SHELL"
  4. 依存関係readlinexz簡単な方法をインストールしますbrew

    brew install readline xz
  5. を含むPython 3.6.xをインストールしますPython.framework(おそらくバージョン番号を適合させます)

    env PYTHON_CONFIGURE_OPTS="--enable-framework" pyenv install 3.6.8
  6. 新しいバージョンのPythonを追加した後は常に再ハッシュする pyenv

    pyenv rehash
  7. シンボリックリンク Python.framework

    sudo ln -s $(pyenv root)/versions/3.6.8/Python.framework /Library/Frameworks/Python.framework

これで、qgis.orgのQGIS 3.6.0インストーラーは正常に動作し、macOSは複数のPythonバージョンに対して十分に準備され、システムのPythonでうまく動作します。


これは、インストールした既存の依存関係に本当に不満だったhomebrewインストールよりもうまく機能しました。
MattyB

3

pyenvand を使用するバージョンbrew

brew install pyenv
env PYTHON_CONFIGURE_OPTS="--enable-framework CC=clang" pyenv install 3.6.5
sudo ln -s /Users/$USER/.pyenv/versions/3.6.5/Python.framework/Versions/3.6 /Library/Frameworks/Python.framework/Versions/3.6
sudo cp -R /Users/$USER/.pyenv/versions/3.6.5/Python.framework/Versions/3.6 /Library/Frameworks/Python.framework/Versions/3.6
sudo cp -r /Users/$USER/.pyenv/versions/3.6.5/lib/python3.6/lib-dynload/ /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload
sudo cp /Users/$USER/.pyenv/versions/3.6.5/lib/python3.6/lib-dynload/_struct.cpython-36m-darwin.so /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_struct.cpython-36m-darwin.so
# 

2
最初の2行を実行するだけで十分なはずですln -s ~/.pyenv/versions/3.6.5/Python.framework /Library/Frameworks/Python.framework
アレックスマルコフ

0

QGISをMacにインストールするときに同じ問題に直面しました。
それは失敗しましたが、anacondaなどによってインストールされた他のPythonとソフトリンクしようとしましたが
、問題を解決した方法:関連するpythonバージョンをpython.orgにダウンロードしてインストールします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.