CMake编译带CUDA的OpenCV后Python site-packages找不到cv2文件夹
问题排查原因及解决方案
- 首先修正CMake安装路径变量名错误
你当前配置的CMAKE_PREFIX_INSTALL是错误的变量名,正确的安装路径配置变量应为CMAKE_INSTALL_PREFIX,变量名写反会导致CMake无法识别你指定的安装目录,自然不会生成对应路径下的install文件夹,也不会执行Python包的安装逻辑。 - 检查Python绑定编译开关是否开启
CMake配置完成后,查看控制台输出的Python 3配置段,确认以下几项状态正常:BUILD_opencv_python3选项为勾选状态Modules下的Python bindings显示为YESInstall path指向你配置的C:/Users/user/AppData/Local/Programs/Python/Python39/Lib/site-packages
如果以上状态异常,需要重新勾选对应开关、确认Python路径配置无误后重新生成CMake缓存。
- 确认INSTALL目标执行权限足够
你使用Visual Studio生成器编译时,写入系统盘的Python站点包目录需要管理员权限,普通权限运行编译命令时,安装步骤会静默跳过不会抛出致命错误。你可以右键打开开发者命令提示/终端,选择「以管理员身份运行」后重新执行cmake --build "fullpath to build folder" --target INSTALL --config Release命令即可。 - 临时替代方案
你当前build目录下的win-install就是默认生成的安装文件目录,进入该目录查找cv2.cp39-win_amd64.pyd(对应Python3.9版本)文件,直接将该文件复制到你Python的site-packages目录下,即可正常在Python中导入cv2使用。
内容的提问来源于stack exchange,提问作者ishrnbok
相关产品推荐
相关产品推荐

