ImportError: dynamic module does not define module export function (PyInit_cv2)

前端 未结 2 1326
忘掉有多难
忘掉有多难 2021-01-13 01:39

When I try to import cv2 in IPython , I am getting this error-

ImportError: dynamic module does not define module export function (PyInit_cv2)

相关标签:
2条回答
  • 2021-01-13 02:30

    In my case, I was using opencv library for python2 in python3.

    Check your PYTHONPATH by typing

    echo $PYTHONPATH

    and see there is correct path for python3.

    $ echo $PYTHONPATH
    :/usr/local/lib/python3.4/site-packages
    

    I define PYTHONPATH at the end of ~/.bashrc file. Modify it if you are loading python2's library.

    After source ~/.bashrc or restart terminal, check PYTHONPATH again

    It solves my problem.

    0 讨论(0)
  • 2021-01-13 02:44

    Python3 libraries usually can be found in: /usr/lib/python3/dist-packages

    I found out that the library cv2.cpython-34m.so is needed for Python3.4. But this file wasn't be contained in my default library directory.

    In my environment, this library was stored in /usr/local/lib/python3.4/dist-packages/

    So I created a symbolic link. Try it with:

    cd /usr/lib/python3/dist-packages
    sudo ln -s /usr/local/lib/python3.4/dist-packages/cv2.cpython-34m.so
    
    python3
    >>> import cv2
    

    I hope, this helps you

    0 讨论(0)
提交回复
热议问题