天天看点

win10下安装pyltb的"failed with exit status 2"问题解决

配置:

  • 系统: win 10
  • python version : 3.6
  • pyltp version : 0.2.1
  • pip version: 18.0

问题描述:

执行

pip install pyltp
           

在build cpp阶段错误, 系统已安装VS2017.

错误信息:

...
c:\users\\appdata\local\temp\pip-install-do3eqyig\pyltp\ltp\src\srl\include\extractor\Converter.h(): warning C4267: “初始化”: 从“size_t”转换到“unsigned int”,可能丢失数据
c:\users\\appdata\local\temp\pip-install-do3eqyig\pyltp\ltp\src\srl\include\extractor\Converter.h(): note: 编译 类 模板 成员函数 "void extractor::Converter<extractor::DataFileName,extractor::DataFileContext>::run(void)" 时
ltp/src/srl/common/extractor/ExtractorFileToWordEmb.h(): note: 参见对正在编译的函数 模板 实例化“void extractor::Converter<extractor::DataFileName,extractor::DataFileContext>::run(void)”的引用
ltp/src/srl/include/extractor/ConverterFileReader.h(): note: 参见对正在编译的 类 模板 实例化 "extractor::Converter<extractor::DataFileName,extractor::DataFileContext>" 的引用
c:\users\\appdata\local\temp\pip-install-do3eqyig\pyltp\ltp\src\srl\include\extractor\Converter.h(): error C3861: “convert”: 找不到标识符
error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Tools\\MSVC\\14.15.26726\\bin\\HostX64\\x64\\cl.exe' failed with exit status 
           

问题定位:

pip版本不同,对于build的方式不同,从而build pyltp的c++包时发生错误.

解决方法:

1) 下载wheel文件

pyltp-0.2.1-cp36-cp36m-win_amd64.whl

2) 在wheel文件的文件夹下执行

pip install pyltp-.-cp36-cp36m-win_amd64.whl
           

3) 安装成功. 使用wheel安装之前,可先执行

python install wheel
           

更新wheel安装的版本