V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
napretep
V2EX  ›  Python

请问 windows 系统下 python3.4 安装模块时遇到的 unable to find vsvarsall.bat 问题有什么好的解决办法?

  •  
  •   napretep · 2015-08-23 18:27:31 +08:00 · 3338 次点击
    这是一个创建于 3381 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一般都是装好了 vc++ 2010 ,但是你安装一个模块比如 scrapy 时,就会报错说找不到 vsvarsall.bat 。
    stackoverflow 上看过一些解决办法但是好像都不能通用。
    请问各位有什么好的通用的解决办法?

    12 条回复    2015-08-26 15:25:19 +08:00
    zhuangzhuang1988
        1
    zhuangzhuang1988  
       2015-08-23 18:53:02 +08:00
    修改 Python27\Lib\distutils 中的代码..
    chengzhoukun
        2
    chengzhoukun  
       2015-08-23 19:33:55 +08:00
    nooper
        3
    nooper  
       2015-08-23 19:45:33 +08:00
    请安装 vs 开发环境, vs 2015 最新版本,然后 set vs140comntools = "vs100commntools" 应该着这样。 python3 是用 vs 2010 编译的。
    gamexg
        4
    gamexg  
       2015-08-23 19:49:04 +08:00 via Android
    stevegy
        5
    stevegy  
       2015-08-23 20:25:35 +08:00
    需要好好 google 啊。。。

    For Windows vcvarsall.bat problem:
    http://stackoverflow.com/questions/6551724/how-do-i-point-easy-install-to-vcvarsall-bat

    Set the
    For Python 2.7
    SET VS90COMNTOOLS=c:\app\vs2008\Common7\Tools\

    For Python 3.4.2
    SET VS100COMNTOOLS=c:\app\vs2010\Common7\Tools\
    napretep
        6
    napretep  
    OP
       2015-08-23 21:28:05 +08:00
    @stevegy 没有效果
    @gamexg 没有 python3 的版本
    @nooper VS 还没下过来,已经试过 set 没有效果
    @zhuangzhuang1988 我是 python3.4 ,修改了这个文件中的 msvc9compiler.py 的代码,没有效果
    @chengzhoukun python3 的 scrapy 没有,还有就是。。不会用
    chengzhoukun
        7
    chengzhoukun  
       2015-08-23 23:09:18 +08:00
    @napretep scrapy 本来就对 Python3 支持不全,过几个月再用吧,或者直接 2.7
    PythonAnswer
        8
    PythonAnswer  
       2015-08-24 01:34:10 +08:00
    我机器上装的 vs2010 c++ express 成功编译过很多包 cython numpy 之类的.

    scrapy 说是年底尽量支持到 3.4, 就算你编译通过也没用. 你等一阵子再用就是了.
    20015jjw
        9
    20015jjw  
       2015-08-24 03:16:49 +08:00 via Android
    装*nix
    elfone
        10
    elfone  
       2015-08-24 09:48:07 +08:00
    我用的是 vs2013 、 python3.4 ,修改了 msvc9compiler.py 文件,其中 12.0 要改成 vs 版本对应的。 vs2010 对应的可能是 10.0 (电脑上没有,根据 vc2010 推测的)

    修改 MSVCCompiler 函数:
    vc_env = query_vcvarsall (VERSION, plat_spec )
    为:
    vc_env = query_vcvarsall (12.0, plat_spec )
    qq12365411
        11
    qq12365411  
       2015-08-24 18:09:08 +08:00   ❤️ 1
    我来回答你,之前遇到你这样的问题,为了安装 pandas , 装 vs 各种版本,装 mingw32 都不行,最后就

    http://www.lfd.uci.edu/~gohlke/pythonlibs/

    找到对应的 下载下来

    pip install [你下载的包的名字]
    就可以了,如果提示不兼容你的平台,那你把 32 位 64 位都下载了,都 pip intall 一下
    napretep
        12
    napretep  
    OP
       2015-08-26 15:25:19 +08:00
    折腾了两天,下了某个版本的 vs ,大部分问题解决了。 scrapy 死活装不起来可能真的是版本问题。

    VC++的版本很重要,那种几百 K 的不行,高于低于 2010 版本的也不行,最好是 VS 里提取出来的那种 VC++,我最终下到了一个 VC++2010 express 有八十多 M ,装好就可以了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1453 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 17:02 · PVG 01:02 · LAX 09:02 · JFK 12:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.