gpt4 book ai didi

python - CentOS上用python模块安装OpenCV出错

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:18:13 28 4
gpt4 key购买 nike

当我运行此命令以使用 Python 模块安装 OpenCV 时

cmake ../ -DCMAKE_BUILD_TYPE=RELEASE 
-DCMAKE_INSTALL_PREFIX=/usr/local
-DBUILD_EXAMPLES=ON
-DBUILD_NEW_PYTHON_SUPPORT=ON
-DINSTALL_PYTHON_EXAMPLES=ON
-DPYTHON_EXECUTABLE=/usr/local/bin/python2.7
-DPYTHON_INCLUDE_DIR=/usr/local/include/python2.7/
-DPYTHON_LIBRARY=/usr/local/lib/python2.7/config/libpython2.7.a
-DPYTHON_NUMPY_INCLUDE_DIR=/usr/local/lib/python2.7/site-packages/numpy/core/include/
-DPYTHON_PACKAGES_PATH=/usr/local/lib/python2.7/site-packages/
-DBUILD_PYTHON_SUPPORT=ON

我收到此错误消息。

/usr/bin/ld: /usr/local/lib/python2.7/config/libpython2.7.a(abstract.o): relocation R_X86_64_32 
against `.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/python2.7/config/libpython2.7.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[2]: *** [lib/cv2.so] Error 1
make[1]: *** [modules/python/CMakeFiles/opencv_python.dir/all] Error 2
make: *** [all] Error 2

我不明白哪里出了问题和错误信息。

谁能告诉我这是怎么回事?

顺便说一下,我的操作系统是 CentOS。

我用的是Python2.7.5

最佳答案

我回答我自己的问题。希望遇到同样问题的人能在短时间内找到解决方法。

1.首先,只需使用 yum 更新所有 pagackages安装 OpenCV 时,我遇到了几个归因于依赖性问题的错误。

 sudo yum update --skip-broken

2.用“--enable-shared”重建你的Python。带有 python 模块的 OpenCV 需要正确构建“libpython2.7.so”文件。但是如果你刚刚构建的 python 没有这个配置,你很可能没有这个文件。“libpython2.7.a”还不够。就我而言,当我将 libpython2.7.a 称为 python 库源时,它不断崩溃。

所以.. 下载 python 2.7.5(或类似的东西),然后像这样重新配置。

./configure --enable-shared
make
make install

现在你可能会得到“libpython2.7.so”和“libpython2.7.so.1.0”

3.使用 python 模块构建您的 OpenCV。这是我在安装时编写的代码。我想这个示例可以帮助您解决问题。

cmake ../ -DCMAKE_BUILD_TYPE=RELEASE 
-DCMAKE_INSTALL_PREFIX=/usr/local
-DBUILD_EXAMPLES=ON
-DBUILD_NEW_PYTHON_SUPPORT=ON
-DINSTALL_PYTHON_EXAMPLES=ON
-DPYTHON_EXECUTABLE=/usr/local/bin/python2.7
-DPYTHON_INCLUDE_DIR=/usr/local/include/python2.7/
-DPYTHON_LIBRARY=/usr/local/lib/libpython2.7.so.1.0
-DPYTHON_NUMPY_INCLUDE_DIR=/usr/local/lib/python2.7/site-packages/numpy/core/include/
-DPYTHON_PACKAGES_PATH=/usr/local/lib/python2.7/site-packages/
-DBUILD_PYTHON_SUPPORT=ON

就这些。

关于python - CentOS上用python模块安装OpenCV出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18729495/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com