【问题标题】:logger.warning("MSVC is not supported") Error when installing pystan on windows 10logger.warning("MSVC is not supported") 在 Windows 10 上安装 pystan 时出错
【发布时间】:2019-03-13 09:24:48
【问题描述】:

我的目标是在我的 Windows 10 计算机上安装 fbprophet。 我正在尝试使用 pip 安装 pystan(先知的主要依赖项),但大约一分钟后,我收到以下错误:

Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "c:\users\User\appdata\local\temp\pip-build-nbypis\pystan\setup.py", line 124, in <module>
        logger.warning("MSVC is not supported")
    NameError: name 'logger' is not defined

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in c:\users\User\appdata\local\temp\pip-build-nbypis\pystan\

我正在使用 python 2.7

【问题讨论】:

  • 同样的错误,使用 python 3.7
  • 对于 Python 3.7,首先安装 numpy 和 cython,然后再安装 pystan。
  • numpy 和 cython 已安装,但我仍然收到您的错误。我只是想向潜在的贡献者指出它可能不是特定于 python 2 的。

标签: python-2.7 pystan


【解决方案1】:

Pystan 需要一个有效的 C++ 编译器,但不支持 MSVC,如文档中所述:https://pystan2.readthedocs.io/en/latest/windows.html(编辑 2021 年 9 月 2 日更新到 pystan2 文档)

解决方案是安装 mingw-w64 编译器,您可以使用 conda 来完成,这要容易得多。如果您只想使用 vanilla python 和 pip,请继续阅读。

从http://mingw-w64.org/doku.php/download下载mingw编译器请确保您下载并安装64位版本,因为32位应用程序在编译pystan时会因32位应用程序的内存阈值而崩溃。如果您手动安装,则需要将 [...]\MinGW\bin\ 文件夹添加到 PATH。

检查您的 distutils.cfg 并添加:

[build]
compiler=mingw32

此外,pystan 2.17.1 之后的版本似乎在非 conda 环境下无法在 windows 下正确编译。因此,如果您可以选择此版本,请使用此版本。

然后 FBProhpet 不喜欢手动安装 MinGW 编译器,所以我需要在 distutils 中注释 mingw 编译器行。您需要确保已安装 MSVC 14 和 Windows SDK - python 自动识别这些,无需再次更改 distutils.cfg。

【讨论】:

  • 我遇到了这个问题,简单地安装 mingw-w64 编译器,设置我的 PATH,然后添加 distutils.cfg 似乎还不够。 conda 说明中提到了 mingw64-toolchain 并使用 libpython 包来自动配置 disutils.cfg。不知道为什么我不能让它在 conda 之外工作,但使用 conda 要容易得多。
猜你喜欢
  • 2017-02-20
  • 2017-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-14
相关资源
最近更新 更多