個人用メモ & エックスサーバーにOpenCVインストールする勇者様用の町人情報
素人が叩いたコマンドを羅列してますので、勇者様まとめてください。
pipからはインストールはできない(共有サーバー故権限がなさげ)
AnacondaからはopenCVのインストールは可能だが、標準のpythonのライブラリとしては読ませられない(パスが通っていない?謎)
Anacondaに仮想環境を作り、pythonをインストールし、そこにOpenCVを入れると動くが、この環境をsource Activate を維持し続け方がわからない。またこの仮想環境で構築したものをサーバー
ssh
#pyenvのインストール
git clone git://github.com/yyuu/pyenv.git ~/.pyenv
vi .zshrc
#----- pyenv
export PYENV_ROOT="${HOME}/.pyenv"
if [ -d "${PYENV_ROOT}" ]; then
export PATH=${PYENV_ROOT}/bin:$PATH
eval "$(pyenv init -)"
fi
#Anacondaのインストール
pyenv install anaconda3-5.1.0
vi ~/.bashrc
で下記2行を追加し、パスを通す。
#anaconda
export PATH=$PATH:$HOME/.pyenv/versions/anaconda3-5.1.0/bin
export PATH=$HOME/bin:$PATH
pyenv local anaconda3-5.1.0 #なんだっけ?
#anacondaによるOpenCVのインストール
anaconda search opencv
conda install -c https://conda.binstar.org/menpo opencv3 #大事かも
conda info -e
# conda environments:
#
base * /home/account_name/.pyenv/versions/anaconda3-5.1.0
source $PYENV_ROOT/versions/anaconda3-5.1.0/bin/activate base
##仮想環境切替? 不要
#activate競合問題 PYENVとAnacondaがぶつかるらしいのでフルパスで環境を切り替える
#conda create -n py27 python=2.7 anaconda
#source $PYENV_ROOT/versions/anaconda3-5.1.0/bin/activate py27
#conda install -c conda-forge opencv
#conda install -c conda-forge opencv3
python
>>>
import sys
sys.path
#標準
['', '/usr/lib64/python27.zip', '/usr/lib64/python2.7', '/usr/lib64/python2.7/plat-linux2', '/usr/lib64/python2.7/lib-tk', '/usr/lib64/python2.7/lib-old', '/usr/lib64/python2.7/lib-dynload', '/usr/lib64/python2.7/site-packages', '/usr/lib/python2.7/site-packages']
#Anaconda標準(OpenCVがインストールされている)
['', '/home/account_name/.pyenv/versions/anaconda3-5.1.0/lib/python36.zip', '/home/account_name/.pyenv/versions/anaconda3-5.1.0/lib/python3.6', '/home/account_name/.pyenv/versions/anaconda3-5.1.0/lib/python3.6/lib-dynload', '/home/account_name/.pyenv/versions/anaconda3-5.1.0/lib/python3.6/site-packages']
#Anaconda仮想 python2.7インストールベース
#['', '/home/account_name/.pyenv/versions/anaconda3-5.1.0/envs/py27/lib/python27.zip', '/home/account_name/.pyenv/versions/anaconda3-5.1.0/envs/py27/lib/python2.7', '/home/account_name/.pyenv/versions/anaconda3-5.1.0/envs/py27/lib/python2.7/plat-linux2', '/home/account_name/.pyenv/versions/anaconda3-5.1.0/envs/py27/lib/python2.7/lib-tk', '/home/account_name/.pyenv/versions/anaconda3-5.1.0/envs/py27/lib/python2.7/lib-old', '/home/account_name/.pyenv/versions/anaconda3-5.1.0/envs/py27/lib/python2.7/lib-dynload', '/home/account_name/.pyenv/versions/anaconda3-5.1.0/envs/py27/lib/python2.7/site-packages']
/home/account_name/.pyenv/versions/anaconda3-5.1.0/envs/py27/lib/python2.7/site-packages
これがAnacondaにインストールした際のパッケージのパス
後は、プログラムに
# anaconda経由ライブラリ
sys.path.append('/home/account_name/.pyenv/versions/anaconda3-5.1.0/envs/py27/lib/python2.7/site-packages')
import cv2
で、エックスサーバーでとりあえず、OpenCV動いた!
ちなみに、私は素人でインフラとかpythonとかさっぱりわからないので、アドバイスは大歓迎ですが難しいこと簡単なこと、みんなわかりません。