チラ裏。
conda の小さい版 miniconda を使って、python と openblas を入れる。
pyenv で python を入れる場合ビルドしないといけないが、miniconda ならダウンロードだけ。
install miniconda
# wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh
# bash Miniconda3-latest-Linux-x86_64.sh
wget https://repo.continuum.io/miniconda/Miniconda3-4.5.4-Linux-x86_64.sh
bash Miniconda3-4.5.4-Linux-x86_64.sh
デフォルトで $HOME/miniconda3
に入った。bin にパスを通しておく。
.bashrc
[[ -d "$HOME/miniconda3" ]] && export PATH="$HOME/miniconda3/bin:$PATH"
install python
すでに $HOME/miniconda3/bin
に入ってるので、パスも通っている。
install openblas
仮想環境を切らずにいれた所、最初からある $HOME/miniconda3/lib
, $HOME/miniconda3/include
に混ざって入ってしまい、都合が悪かったので、仮想環境を切ってから入れることにした。
conda create -n myenv
source activate myenv # 抜けるには source deactivate
インストール
conda install -c anaconda openblas
$HOME/miniconda3/envs/myenv/lib
, $HOME/miniconda3/envs/myenv/include
この辺に入る。myenv までのパスは source activate した際に CONDA_PREFIX
環境変数に設定される。
.bashrc
if [ -d "$HOME/miniconda3/envs/myenv" ]; then
source activate myenv
export LD_LIBRARY_PATH="$CONDA_PREFIX/lib:$LD_LIBRARY_PATH"
export LIBRARY_PATH="$CONDA_PREFIX/lib:$LIBRARY_PATH"
export CPATH="$CONDA_PREFIX/include:$CPATH"
export LDFLAGS="-L$CONDA_PREFIX/lib $LDFLAGS"
export CFLAGS="-I$CONDA_PREFIX/include $CFLAGS"
fi
conda env export
conda 環境を設定ファイルに吐いておけば、別の環境で簡単に再現できる。
$ conda env export > myenv.yml
myenv.yml
name: myenv
channels:
- anaconda
- defaults
dependencies:
- libgcc-ng=7.2.0=hdf63c60_3
- libgfortran-ng=7.2.0=hdf63c60_3
- libopenblas=0.2.20=h9ac9557_7
- openblas=0.2.20=4
- openblas-devel=0.2.20=7
prefix: /home/sonots/miniconda3/envs/myenv
再現
$ conda env create -f myenv.yml