Win10下Python3.6安装tesserocr时出现cl.exe执行错误求助
解决Windows 10 + Python 3.6安装tesserocr时cl.exe执行失败的问题
我来帮你搞定这个头疼的问题!这个错误本质是安装tesserocr时需要编译C扩展代码,但你的环境缺少必要的编译工具链或者依赖配置不正确。下面是几个亲测有效的解决步骤,按顺序试就行:
方法1:安装对应版本的Visual C++编译工具
Python 3.6依赖的是**Visual Studio 2015(VC14)**的编译工具集,别装最新版的VS Build Tools,版本不匹配会出问题:
- 下载Visual C++ Build Tools 2015(注意是2015版本)
- 安装时务必勾选「Windows 10 SDK」和「Visual C++ 2015 Build Tools」这两个核心组件,完成安装后重启电脑让配置生效
方法2:配置环境变量确保cl.exe可被调用
如果已经装了编译工具但还是报错,大概率是cl.exe的路径没在系统PATH里:
- 把路径
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64添加到系统环境变量的PATH中 - 打开新的命令提示符(cmd)或者IDE,输入
cl测试,如果能看到编译器版本信息,说明配置成功
方法3:先安装Tesseract OCR引擎(必做!)
tesserocr是Tesseract的Python绑定,必须先装底层引擎:
- 下载对应系统位数的Tesseract稳定版(建议3.x或4.x版本,和Python3.6兼容性更好)
- 安装时勾选「Add to PATH」选项,或者手动把Tesseract的安装目录(比如
C:\Program Files\Tesseract-OCR)加到系统PATH - 新增环境变量
TESSDATA_PREFIX,值设为Tesseract安装目录下的tessdata文件夹路径(比如C:\Program Files\Tesseract-OCR\tessdata)
方法4:直接用预编译Wheel包安装(最省心)
不想折腾编译的话,直接用别人预编译好的二进制包:
- 找到对应Python3.6和系统位数的tesserocr wheel包(比如64位系统找
tesserocr-<版本号>-cp36-cp36m-win_amd64.whl) - 用pip安装这个本地包,命令示例:
pip install tesserocr-2.5.2-cp36-cp36m-win_amd64.whl
额外注意事项
- 确保Python3.6的位数(32/64位)和Tesseract、wheel包的位数完全一致,不然会出现不兼容问题
- 如果用conda虚拟环境,要在激活环境后再执行安装操作
内容的提问来源于stack exchange,提问作者ying fang
相关产品推荐
相关产品推荐

