在我深入研究之前,我应该注意到我已经看过a very similar question,但所提出的解决方案并不适用于我。也许有一个原因是因为那是Linux构建而我目前的难度是在Windows 7机器上。我使用Cygwin来访问gcc(5.2.0)编译器套件。
无论如何,我一直试图通过PyStan尝试Stan。我正在使用我刚刚更新的Anaconda(2.4.1 64位)发行版(Python 2.7.11)。我最初尝试通过pip安装PyStan,但由于看起来像以下错误,安装仍然失败:
Cannot build msvcr library: "msvcr90d.dll" not found
因此,我使用了conda代替,似乎安装得很好。 (我应该注意到conda安装将我的numpy推回到早期版本,导入后会与pandas发生冲突。我刚刚更新了anaconda来处理这些破坏的依赖项。)我也能够毫无问题地导入PyStan。但是,当我实际尝试拟合模型(在Jupyter Notebook中)时,该过程失败,标题中出现异常。
我做的第一件事就是确认gcc位于引用位置的位置(标题中未显示)。确实如此,似乎工作得很好。然后我尝试从命令行(仍然使用Python)将模型作为脚本运行,并且失败并出现相同的错误。当我通过REPL重新创建模型时,它指向一个不同的位置,它有一个.bat文件引用(已验证的)编译器,但也失败了。
我很确定这是因为我有Visual Studio 2012,而不是Visual Studio 2008.虽然我可以运行并行安装,但如果此代码将来对其他人有用,这些不是合理的箍跳过来实现它。我希望别人可能有更好的解释。任何信息将不胜感激。
答案 0 :(得分:0)
受益于https://github.com/stan-dev/pystan/issues/306
的帖子我遇到了各种错误信息,但最后,我成功安装了PyStan。
我的机器也安装在Windows 7上,安装了Anaconda3的x64。这是从源代码安装PyStan的过程。
安装Visual Studio 2017& Visual Studio C ++ Build Tool 2015 http://landinghub.visualstudio.com/visual-cpp-build-tools
更新Conda
conda update conda
conda update --all
pip install setuptool
conda install numpy cython matplotlib scipy pandas
conda install libpython
conda install -c msys2 m2w64-toolchain = 5.3.0
[构建]
compiler = mingw32
git clone --recursive https://github.com/stan-dev/pystan.git
python setup.py build --compiler = mingw32
python setup.py install
P.S。该问题的解决方案:无法构建msvcr库:" vcruntime140d.dll"未找到。
将vcruntime140d.dll从C:\ Windows \ System32复制到任何文件夹,该文件夹可在高级系统设置/环境变量/系统变量的路径中访问。