安装numpy、nltk问题汇总

系统环境是win7(64bit)+python3.4(64bit)+numpy1.82+vs2012

1.假设用sourceforge上编译好的32bit的exe安装,会提示‘python version ** required,which was not found in the registry’.

原因是安装的python是64bit的吧(不确定),可是注冊表里确实没有,

2.自己手动编译numpy安装,在numpy文件夹下cmd里‘python setup.py build'会提示'unable to find vcvarsall.bat',

原因是python默认使用的是vs2008版本号,打开‘<python安装文件夹>\lib\distutils\msvc9compiler.py’发现默认的搜索文件夹下

的确没有vcvarsall这个文件。假设把vcvarsall移动到这个文件夹,就会出现第三个问题。一般的解决方法是使用mingw。

最好的解决方法直接在msvc9compiler.py文件里找到以下这一行:

 vc_env = query_vcvarsall(VERSION, plat_spec)

改动为:

 vc_env = query_vcvarsall(11.0, plat_spec)

我的是vs2012 相应的version就是11.0

详细为什么这样改,參考http://blog.csdn.net/ren911/article/details/6448696

但这样更改后会出现第4个问题。

3.C:\Python33\lib\distutils\msvc9compiler.py", line 287, in query_vcvarsall

raise ValueError(str(list(result.keys())))

ValueError: ['lib', 'include', 'path']

这个问题没找到有效的解决方法 能够通过2种改version的方法避开这个问题

4.RuntimeError: Broken toolchain: cannot link a simple C program

在msvc9compiler.py中,把minfo的赋值语句更改为minfo=None,就可以

5.由于安装的是64bit-python,看网上大家安装nltk各种问题,官网也不建议使用64bit python,

所以查了不少的安装教程,可是出乎意料build和install没出现不论什么问题。

上一篇:UIProgressView[进度条][一般型];UIStepper步数器][事件驱动型]


下一篇:java字节数组和16进制之间的转换