3 回答

TA貢獻1856條經驗 獲得超11個贊
默認情況下,它將安裝到您的系統 Python 路徑,您可以通過輸入以下內容來查看:
which?python
在終端。在您的 cmake 命令(您發布的上面列表)中,您需要告訴它您要構建到哪個 python 可執行路徑。目前你的構建指向上面的默認 Python 位置,現在你想將它指向你的 Conda Python 路徑。因此,例如,我在 Anaconda 中的 Python 環境的基本路徑是:
/home/robert/anaconda3/
您可以通過在終端中輸入以下內容來獲取您的 Anaconda 環境及其位置的列表:
conda?env?list
為此,您需要更新 cmake 命令以告訴它您要構建到的 Python 路徑所在的位置。我之前使用這篇文章來幫助我正確指定 Python 可執行文件構建路徑,并且在為 venv 指定 Python 路徑時它對我有用。
例如,如果我想安裝到我的 Anaconda 環境之一,我會在我的 cmake 中做這樣的事情:
-D?PYTHON_DEFAULT_EXECUTABLE=$(/home/robert/anaconda3/envs/venv_openvcv/python3)
當您構建 cmake 時,滾動瀏覽輸出并特別注意類似以下內容的行:
Python?(for?build):?/home/robert/anaconda3/envs/venv_openvcv/python3
這是您確認是否要將 opencv 構建為正確的 Python 可執行文件(您指定的 Anaconda)的方式。

TA貢獻1818條經驗 獲得超3個贊
在 Ubuntu 20.04 上,這在一個新的干凈構建目錄中對我有用:
export?CPLUS_INCLUDE_PATH=$CONDA_PREFIX/lib/python3.8cmake?-D?CMAKE_BUILD_TYPE=RELEASE?\ ????-D?CMAKE_INSTALL_PREFIX=$CONDA_PREFIX?\ ????-D?PYTHON3_LIBRARY=$CONDA_PREFIX/lib/python3.8?\ ????-D?PYTHON3_INCLUDE_DIR=$CONDA_PREFIX/include/python3.8?\ ????-D?PYTHON3_EXECUTABLE=$CONDA_PREFIX/bin/python?\ ????-D?PYTHON3_PACKAGES_PATH=$CONDA_PREFIX/lib/python3.8/site-packages?\ ????..
我還為我的平臺安裝了 OpenCL 頭文件,以在讓它工作之前克服其他干擾錯誤。如果您的系統上還沒有很多額外的開發者頭文件,您可能需要先安裝更多的頭文件。這讓我順利通過了 cmake 階段,然后通過make
.
之后不需要符號鏈接任何東西make install
。
所以也許這是 python 3.8 的一個很好的基本方法;似乎對官方Ubuntu OpenCV 構建文檔唯一必要的修改是指定cmake
指向 conda 環境目錄的參數,如上所示。
(使用的 OpenCV git 哈希為 69357b1)
-j
下次我可能會在構建過程中嘗試并發,因為 OpenCV 需要大約 30 分鐘才能在相當現代的 CPU 系列上構建。

TA貢獻2003條經驗 獲得超2個贊
我知道這已經解決了,但我只是想分享幫助我在 Ubuntu 20.04.4 LTS 中使用 Python 3.10.2 在 conda 環境中從源代碼安裝 OpenCV 的行。我的 conda 環境稱為cv4
export?CPLUS_INCLUDE_PATH=~/miniconda3/envs/cv4/lib/python3.10cmake???-D?CMAKE_BUILD_TYPE=RELEASE?\ ????????-D?CMAKE_INSTALL_PREFIX=/usr/local?\ ????????-D?OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules?\ ????????-D?PYTHON3_LIBRARY=~/miniconda3/envs/cv4/lib/libpython3.10.so?\ ????????-D?PYTHON3_INCLUDE_DIR=~/miniconda3/envs/cv4/include/python3.10?\ ????????-D?PYTHON3_EXECUTABLE=~/miniconda3/envs/cv4/bin/python?\ ????????-D?PYTHON3_PACKAGES_PATH=~/miniconda3/envs/cv4/lib/python3.10/site-packages?\ ????????-D?BUILD_opencv_python2=OFF?\ ????????-D?BUILD_opencv_python3=ON?\ ????????-D?INSTALL_PYTHON_EXAMPLES=ON?\ ????????-D?INSTALL_C_EXAMPLES=OFF?\ ????????-D?OPENCV_ENABLE_NONFREE=ON?\ ????????-D?BUILD_EXAMPLES=ON?..
添加回答
舉報