我正在使用opencv-python项目here。我想做的是再次重新创建wheel文件。所以我所做的是这样的:
python setup.py bdist_wheel
这将创建一个dist
目录,并在该目录中添加wheel文件,然后将其保存并尝试在Anaconda环境中进行安装,如下所示:
pip install ~/opencv_python-3.4.2+5b36c37-cp36-cp36m-linux_x86_64.whl
这很好,似乎可以安装。但是当我尝试使用它并做
import cv2
我得到了错误:
ImportError: libwebp.so.5: cannot open shared object file: No such file or directory
我认为创建wheel文件将解决所有依赖关系,但是我想知道是否在生成wheel之前是否必须做其他事情以确保所有内容都正确打包?
编辑
我比较了官方提供的车轮档案和我生成的车轮档案,发现没有包含第三方库。因此,我的zip文件内容为:
['cv2/LICENSE-3RD-PARTY.txt',
'cv2/LICENSE.txt', 'cv2/__init__.py',
'cv2/cv2.cpython-36m-x86_64-linux-gnu.so']
我省略了一些不相关的XML文件。同时,官方档案有:
['cv2/__init__.py',
'cv2/cv2.cpython-36m-i386-linux-gnu.so',
'cv2/.libs/libswresample-08248319.so.3.2.100',
'cv2/.libs/libavformat-d485f70f.so.58.17.101',
'cv2/.libs/libvpx-1b5256ac.so.5.0.0',
'cv2/.libs/libz-83853723.so.1.2.3',
'cv2/.libs/libQtGui-55070e59.so.4.8.7',
'cv2/.libs/libavcodec-3b67922d.so.58.21.104',
'cv2/.libs/libswscale-3bf29a6c.so.5.2.100',
'cv2/.libs/libQtTest-0cf8861e.so.4.8.7',
'cv2/.libs/libQtCore-ccf6d197.so.4.8.7',
'cv2/.libs/libavutil-403a4871.so.56.18.102']