Anaconda 3 で各種パッケージのインストール,SWIG の利用,Python 2.7 仮想環境の作成(Ubuntu 上)
【目次】
- 前準備
 - 各種パッケージのインストール
 - Python環境で SWIG を使ってみる
 - 隔離された Python 2.7 環境の作成 (condaを使用)
 - 隔離された Python 2.7 環境で各種パッケージのインストール(condaを使用)
 
先人に感謝
前準備
- 前準備として Anaconda がインストール済みであること
 -  Anaconda3 の conda パッケージの更新、古い conda パッケージファイルの削除
「conda config --remove channels conda-forge」は,conda のチャンネルに「conda-forge」が入っていたら削除する操作.「CondaKeyError: 'channels' 'conda-forge' ...」というエラーメッセージは無視してよい.
conda config --remove channels conda-forge conda upgrade -y --all conda clean -y --packages
(途中省略)
(途中省略)
 
各種パッケージのインストール
Anaconda では,「conda」という形式の Python のパッケージも、簡単に扱うことができる. Python のパッケージを追加することで,Python にいろいろな機能を追加することができる.conda を用いてPythonパッケージ以外のソフトウェアをインストールすることもできる
端末で,次のコマンドを実行する.
CONDAPKGS="tensorflow-gpu tensorflow-datasets matplotlib numpy scipy h5py scikit-learn scikit-image seaborn pandas pandasql pillow pytest pyyaml cython bokeh keras statsmodels plotly sympy csvkit docopt pyproj flake8 protobuf pymc3 bs4 html5lib rope wrapt mkl mkl-include cffi wheel six holoviews jupyterlab jupyter spyder sphinx bottleneck pygments numexpr xlrd xlsxwriter lxml graphviz pydot flask django redis pylint bz2file PyOpenGL"
for i in $CONDAPKGS; do
    echo $i
    conda install -y $i > /dev/null
done
conda install -c conda-forge -y opencv
conda config --remove channels conda-forge
SWIG を使ってみる
-  SWIG のインストール (Install swig) 
# パッケージリストの情報を更新 sudo apt update sudo apt -y install swig
 -  プログラムファイルの作成
http://www.swig.org/Doc1.3/Python.html#Python_nn6 に記載のサンプルプログラム
-  example.i
%module example %{ #define SWIG_FILE_WITH_INIT #include "example.h" %} int fact(int n); -  example.c
#include "example.h" int fact(int n) { if (n < 0){ /* This should probably return an error, but this is simpler */ return 0; } if (n == 0) { return 1; } else { /* testing for overflow would be a good idea here */ return n * fact(n-1); } } -  example.h
int fact(int n);
 -  setup.py
#!/usr/bin/env python """ setup.py file for SWIG example """ from distutils.core import setup, Extension example_module = Extension('_example', sources=['example_wrap.c', 'example.c'], ) setup (name = 'example', version = '0.1', author = "SWIG Docs", description = """Simple swig example from docs""", ext_modules = [example_module], py_modules = ["example"], ) 
 -  example.i
 -  プログラムファイルから、Python で実行可能にするためのファイルを作る
swig -python example.i python setup.py build_ext --inplace ls -la example.* build
 -  python 処理系を起動し、次のプログラムを試してみる
import example example.fact(4) exit()
 
隔離された Python 2.7 環境の作成 (condaを使用)
-  今から作成するPython の仮想環境の名前と、Pythonのバージョンを決めておく
- Python の仮想環境の名前: py27
 - Pythonのバージョン: 2.7
 
 - 端末を開く
 -  Python の仮想環境を作成する
端末で,次のコマンドを実行する.
「Proceed ([y]/n) ?」 に対しては Enterキー
conda create -n py27 python=2.7
(以下省略) -  Python 環境が作成できたことを確認
conda info -e
 
これで、もとからの Python 環境と, 新規作成されたPython 環境(Python のバージョン 2.7,名前は py27)の共存できた。
隔離された Python 2.7 環境で各種パッケージのインストール
Anaconda 既定のときと比べると、最初に「source activate py27」を実行するだけの違い
conda-build パッケージのインストール
conda-buildパッケージは,condaパッケージを自前で作成するなどが簡単にできるためのツール.
-  まずは,最新の conda-build パッケージが欲しい.
新しく端末を開き,次のコマンドを実行する.
activate py27 conda install -y conda-build
* 「Proceed ([y]/n)?」と表示されたら, y + Enter で続行する.「反応が遅いなあ」と思ったら、Enter キーを押してみる.
 -  setuptools, conda, conda-build の更新 
conda update -y setuptools conda update -y conda conda update -y conda-build
* 「Proceed ([y]/n)?」と表示されたら, y + Enter で続行する.「反応が遅いなあ」と思ったら、Enterキーを押してみる.
 -  gcc_linux, gxx_linux のインストール・インストール済みパッケージの更新
conda install -y gcc_linux-64 conda install -y gxx_linux-64 conda update -y --all