Numpy安装错误.(Mingw32CCompiler实例没有属性'compile_options')

MJ.*_*hin 19 numpy theano

我使用python与windows8/anaconda spyder(2.7)我试图更新Theano最新.当我安装theano时

"pip install --upgrade theano"
Run Code Online (Sandbox Code Playgroud)

错误发生在numpy安装部分.

虽然numpy可以在anaconda GUI中使用,但是在anaconda终端中没有显示.(pip show numpy什么都没输出)

错误如下(当我尝试安装numpy时,会发生同样的错误)

  File "c:\users\user\appdata\local\temp\pip_build_user\numpy\numpy\distutils\command\build_src.py", line 329, in build_extension_sources

    sources = self.generate_sources(sources, ext)

  File "c:\users\user\appdata\local\temp\pip_build_user\numpy\numpy\distutils\command\build_src.py", line 386, in generate_sources

    source = func(extension, build_dir)

  File "numpy\core\setup.py", line 455, in generate_config_h

    rep = check_long_double_representation(config_cmd)

  File "numpy\core\setup_common.py", line 191, in check_long_double_representation

    cmd.compiler.compile_options.remove("/GL")

AttributeError: Mingw32CCompiler instance has no attribute 'compile_options'

----------------------------------------
Cleaning up...
  Removing temporary dir c:\users\user\appdata\local\temp\pip_build_user...
Command C:\Anaconda\python.exe -c "import setuptools, tokenize;__file__='c:\\users\\user\\appdata\\local\\temp\\pip_build_user\\numpy\\setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\users\user\appdata\local\temp\pip-nm4fpu-record\install-record.txt --single-version-externally-managed --compile failed with error code 1 in c:\users\user\appdata\local\temp\pip_build_user\numpy
Exception information:
Traceback (most recent call last):
  File "C:\Anaconda\lib\site-packages\pip\basecommand.py", line 122, in main
    status = self.run(options, args)
  File "C:\Anaconda\lib\site-packages\pip\commands\install.py", line 283, in run
    requirement_set.install(install_options, global_options, root=options.root_path)
  File "C:\Anaconda\lib\site-packages\pip\req.py", line 1435, in install
    requirement.install(install_options, global_options, *args, **kwargs)
  File "C:\Anaconda\lib\site-packages\pip\req.py", line 706, in install
    cwd=self.source_dir, filter_stdout=self._filter_install, show_stdout=False)
  File "C:\Anaconda\lib\site-packages\pip\util.py", line 697, in call_subprocess
    % (command_desc, proc.returncode, cwd))
InstallationError: Command C:\Anaconda\python.exe -c "import setuptools, tokenize;__file__='c:\\users\\user\\appdata\\local\\temp\\pip_build_user\\numpy\\setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\users\user\appdata\local\temp\pip-nm4fpu-record\install-record.txt --single-version-externally-managed --compile failed with error code 1 in c:\users\user\appdata\local\temp\pip_build_user\numpy
Run Code Online (Sandbox Code Playgroud)

kon*_*ych 4

这很可能是一个麻木的问题。不幸的是,即使在我建议的修复之后我也无法升级 theano,但遵循像这样的分步指南可能会起作用。

出现此特定问题是因为numpy.distutils.misc_util.mingw32()返回 False,而它不应该返回 False。另请参阅此讨论来源 。我决定手动设置系统变量,MSYSTEMMINGW32变量在我的系统中未定义,而且我发现它不太可能破坏任何其他行为。

正如我所说,这并不能保证升级一定有效,也不保证不会有副作用,但它会解决这里提到的问题。