py2安装pyltp的时候一直卡着不动,使用-v参数查看安装过程,发现一直提示:cc1plus: warning: command line option “-Wstrict-prototypes” is valid for Ada/C/ObjC but not for C++。py3安装pyltp的时候并不会提示这个错误。
用搜索引擎查看了一下这个错误,似乎是一个python的bug,这个参数可以去掉。然后我在stackoverflow上看到了别人安装其他第三方库的时候也遇到了这个问题,比较无害的一种解决方法是下载第三方库的源码,然后在其中的setup.py中增加如下代码:
import os
from distutils.sysconfig import get_config_vars
(opt,) = get_config_vars('OPT')
os.environ['OPT'] = " ".join(
flag for flag in opt.split() if flag != '-Wstrict-prototypes'
)
通过以上代码可以将报错的参数“-Wstrict-prototypes”从编译时的用到的环境变量中删除。然后运行python setup.py install,虽然会提示一堆warning,但是不影响安装。
StackOverflow原问题点此处。