差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
次のリビジョン両方とも次のリビジョン
programming:python:install [2018/12/03] – [Anacondaとは] ikatakosprogramming:python:install [2019/01/07] – [アップデート] ikatakos
行 80: 行 80:
 ==Anaconda独自のパッケージ管理による手間・エラー== ==Anaconda独自のパッケージ管理による手間・エラー==
  
-パッケージ管理がPythonpipは別物だが、依存関係情報がおかしい?ことによると思われるエラーがたまに発生する。+Pythonにはデフォルトで「pip」という管理ツールが付属しているが、Anacondaでのパッケージ管理は専用「conda」で行うことが推奨される。しかし、condaのレポジトリでは、依存関係情報がおかしい?ことによると思われるエラーがたまに発生する。
  
-また、リポジトリにはよく使うものは一通り揃っているが、少し用途特化なパッケージはpipほどは充実してないので、様々なチャンネルから掻い摘まんでインストールすることもある。どのチャンネルも依存関係の解決は自身のチャンネル内のパッケージで行おうとするので、よく依存されるNumPyなどのパッケージはインストールやアップデート時に上書き合戦が起こったりして、その分だけ時間がかかる。+condaのリポジトリにはよく使うものは一通り揃っているが、少し用途特化なパッケージはpipほどは充実してないので、様々なチャンネルから掻い摘まんでインストールすることもある。どのチャンネルも依存関係の解決は自身のチャンネル内のパッケージで行おうとするので、よく依存されるNumPyなどのパッケージはインストールやアップデート時に上書き合戦が起こったりして、その分だけ時間がかかる。
  
 有名なツールとはいえあくまで第三機関なので、情報量も相対的には少ない。エラーに遭遇したら解決策を探すより一旦破壊して作り直した方が速いこともあるが、再構築にもそれなりに時間がかかる。 有名なツールとはいえあくまで第三機関なので、情報量も相対的には少ない。エラーに遭遇したら解決策を探すより一旦破壊して作り直した方が速いこともあるが、再構築にもそれなりに時間がかかる。
行 90: 行 90:
   * 直接インストール   * 直接インストール
     * pipでも一部パッケージはwheelでバイナリ化しての提供も行われるようになり(全てでは無いが)、失敗も起こりづらくなっている     * pipでも一部パッケージはwheelでバイナリ化しての提供も行われるようになり(全てでは無いが)、失敗も起こりづらくなっている
-    * 同一バージョンで複数環境を構築する場合venvが使える +    * 仮想環境はvenvが使える 
-    1つのバージョンしか使わないよという場合は、で十分かも+      これは、あくまでインストールしたPython上で動くツールなので、Python自身のバージョンの切り替えはできない 
 +      * インストールしたパッケージなどは、環境毎に保持さる 
 +      * 依存関係の不整合などのエラーが万一発生したとき、直接インストールした1環境しないとどうしよう無くなるので、venvは使っておいた方がよい
   * VirtualBox, Dockerなどの仮想マシン上のLinuxに、直接インストール   * VirtualBox, Dockerなどの仮想マシン上のLinuxに、直接インストール
     * 複数バージョンも、OS環境ごと用意してしまえる     * 複数バージョンも、OS環境ごと用意してしまえる
     * 仮想マシンの立て方やLinuxについて、必要な勉強量は増える     * 仮想マシンの立て方やLinuxについて、必要な勉強量は増える
-    * Windows上でIDEなどを使う場合は、設定が少し面倒に+    * ツールの設定が少し複雑になる 
 +      * スクリプトをWindows上で管理したい場合はVirtualBoxでの共有フォルダの設定など 
 +      * IDEから呼び出して実行させたい場合などは、IDEでのssh経由でのコマンド実行の設定な
  
  
行 142: 行 146:
  
 時間はかかるので、任意で。 時間はかかるので、任意で。
 +
 +
 +<WRAP center round box>
 +なお、2019年現在、どういう環境条件かは不明だが、NumPyが依存するパッケージ「mkl」で最新版を使うと、NumPy、またNumPyに依存するパッケージ使用時にdllロードエラーが発生することがある。
 +
 +  Intel MKL FATAL ERROR: Cannot load mkl_intel_thread.dll.
 +
 +  * [[http://nu-pan.hatenablog.com/entry/2018/10/12/232502|conda 環境下で mkl のロードに失敗するときの対処法あれこれ - ぬうぱんの備忘録]]
 +
 +原因は様々だが、一つの対処法として、一旦mklとnumpyをアンインストールした後、mklをバージョン2018.0.2にてインストールし、その後NumPy他をインストールすると(少し最新版からバージョンは下がるが)ちゃんと動くという報告がある。
 +
 +  > conda install mkl=2018.0.2
 +  > conda install numpy
 +
 +この原因によるエラーの場合、うっかり''conda update --all''しちゃうとmklが最新版に戻ってエラーが再発するので、all指定は避けた方がよい。
 +</WRAP>
 +
 +
  
 =====環境の構築===== =====環境の構築=====
programming/python/install.txt · 最終更新: 2021/04/23 by ikatakos
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0