You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python环境下如何编译启用QT支持的OpenCV库

报错根因

调用cv2.createButton()时抛出The library is compiled without QT support in function 'cv::createButton'错误,是因为当前Python环境安装的OpenCV预编译包构建阶段未开启Qt后端支持。默认PyPI源分发的opencv-python、opencv-python-headless等官方预编译包为了控制安装包体积,默认关闭Qt编译选项,HighGUI模块依赖Qt的按钮、高级交互控件功能会被禁用。

编译启用Qt支持的OpenCV操作步骤(PyCharm环境通用)
  • 清理原有冲突包
    打开PyCharm底部内置Terminal终端,确保终端激活的是当前项目使用的Python虚拟环境,执行以下命令卸载所有已安装的OpenCV相关包,避免版本冲突:
    pip uninstall opencv-python opencv-python-headless opencv-contrib-python opencv-contrib-python-headless -y
    
  • 安装编译前置依赖
    终端执行命令安装Python层面的编译依赖:
    pip install numpy cmake
    
    不同操作系统需要提前安装对应系统层编译依赖:
    • Windows:安装Visual Studio 2019/2022,勾选「使用C++的桌面开发」组件
    • macOS:终端执行xcode-select --install安装命令行开发工具,再通过brew安装qt@5
    • Ubuntu/Debian系Linux:终端执行sudo apt install build-essential qtbase5-dev libgtk-3-dev pkg-config
  • 本地编译安装带Qt支持的OpenCV
    终端执行以下命令,强制pip在本地拉取OpenCV源码,传入开启Qt支持的编译参数完成构建,不需要手动下载源码、手动配置cmake:
    pip install opencv-python --no-binary opencv-python --config-settings="WITH_QT=ON" --config-settings="WITH_OPENGL=ON" --config-settings="CMAKE_BUILD_TYPE=Release"
    
  • 编译结果验证
    安装完成后,在PyCharm的Python控制台执行以下代码,查看OpenCV构建信息:
    import cv2
    print(cv2.getBuildInformation())
    
    在输出内容中找到Qt配置项,若状态显示为YES且标注了对应Qt版本,即代表Qt支持已成功启用,cv2.createButton()接口可正常调用。

本地编译时长根据设备性能不同在5-20分钟不等,编译过程中不要关闭终端或中断进程,否则会导致编译失败。如果需要用到OpenCV contrib扩展模块的功能,把上述安装命令里的opencv-python替换为opencv-contrib-python即可,编译参数保持不变。

内容的提问来源于stack exchange,提问作者Omkar Dalvi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 00:06:24