すべてをvirtualenv内に保持したいと思います。これはOpenCVで可能ですか?私は最初からビルドすることに問題はありません。最初にvirtualenvをセットアップしてから、特別なコンパイルフラグを使用して、インストール先を指定する必要がありますか?
解決策は、cv2.soとcv.pyをvirtualenvを実行しているディレクトリにコピーし、次にpip install numpyを実行する必要があることでした。 Ubuntu 12.04でこれを行うには、私が使用しました。
virtualenv virtopencv
cd virtopencv
cp /usr/local/lib/python2.7/dist-packages/cv* ./lib/python2.7/site-packages/
./bin/pip install numpy
source bin/activate
python
import cv
Opencvから インストールガイド :
デフォルトでは、OpenCVビルドシステムは、Pythonが検出できる最新バージョンを選択するか、またはcmakeを呼び出すときにPYTHON_EXECUTABLE変数を使用して特定のバージョンを使用するように強制できます。)
上記のリンクの指示に従って、ubuntu 11.10のvirtual env --with-no-site-packageにインストールしました。 opencv全体をビルドする必要があります。そしてpython一緒にラッパー。
編集1:
一時ディレクトリを作成します。このディレクトリには、生成されたMakefile、プロジェクトファイル、オブジェクトファイル、出力バイナリを配置します。
cd ~/opencv
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
作成した一時ディレクトリ()を入力し、次の手順に進みます。
make
Sudo make install
---------
ビルドとインストールの後、PYTHON_PATHに拡張モジュールを追加します
export PYTHONPATH=~/projects/opencv/release/lib:$PYTHONPATH
Debianでは、python-opencv、python-virtualenv、python-pipを適切にインストールしてから、オプション--system-site-packagesを使用してvirtualenvを作成しました。
これは、python実行可能ファイルをcmakeへの引数として渡すことで可能になります。また、ローカルインストールフォルダーを使用することをお勧めします。そのため、Sudoはまったく必要ありません。その後、make installはSudo権限を要求しません。おそらくvirtualenv pythonをターゲットにしています。
Cmake-guiを使用してcmakelists.txtを開き、python変数を確認します。virtualenvにnumpyがない場合もおそらくエラーが発生するため、正しい方法を選択していることがわかりますpython。python実行可能ファイル用に特別に構築されているため、これはpythonバージョンとは関係なく動作します