ValueError: Unbekannt MS Compiler version 1900
Ich versuche zum ausführen von code mit Python 3.5 auf Windows 10 mit dem Einsatz von cygwin (mingw). Um genau zu sein bin ich mit der PyDSTool-Modul, wo ich den Anruf dopri integrator. Das problem ist, ich habe ein Problem mit distutils
Sie nicht zu erkennen, Microsoft Visual Studio 2015. Gibt es eine Möglichkeit dies zu vermeiden (ohne sich zurück zu älteren Versionen von Python, Windows, Visual Studio). Den vollständigen Fehler können sein gesehen unten.
ValueError Traceback (most recent call last)
<ipython-input-16-bfeb915bfd7b> in <module>()
60 print("\n")
61
---> 62 testODE = Dopri_ODEsystem(DSargs)
63
64 print('Integrating...')
C:\Anaconda3\lib\site-packages\PyDSTool\Generator\Dopri_ODEsystem.py in __init__(self, kw)
371 print("stages using the makeLibSource and compileLib methods.")
372 else:
--> 373 self.makeLib()
374
375 @property
C:\Anaconda3\lib\site-packages\PyDSTool\Generator\mixins.py in makeLib(self, libsources, libdirs, include)
98 self.forceLibRefresh()
99 self.makeLibSource(include)
--> 100 self.compileLib(libsources, libdirs)
101
102 @property
C:\Anaconda3\lib\site-packages\PyDSTool\Generator\mixins.py in compileLib(self, libsources, libdirs)
78 precompiled libraries."""
79
---> 80 self._builder.build(libsources, libdirs, self._compiler)
81
82 def forceLibRefresh(self):
C:\Anaconda3\lib\site-packages\PyDSTool\Generator\mixins.py in build(self, libsources, libdirs, compiler)
187 script_args=script_args,
188 ext_modules=[extmod],
--> 189 py_modules=[self.modname])
190
191 def save_vfield(self, code, fname=None):
C:\Anaconda3\lib\site-packages\numpy\distutils\core.py in setup(**attr)
167 new_attr['distclass'] = NumpyDistribution
168
--> 169 return old_setup(**new_attr)
170
171 def _check_append_library(libraries, item):
C:\Anaconda3\lib\distutils\core.py in setup(**attrs)
146 if ok:
147 try:
--> 148 dist.run_commands()
149 except KeyboardInterrupt:
150 raise SystemExit("interrupted")
C:\Anaconda3\lib\distutils\dist.py in run_commands(self)
953 """
954 for cmd in self.commands:
--> 955 self.run_command(cmd)
956
957 # -- Methods that operate on its Commands --------------------------
C:\Anaconda3\lib\distutils\dist.py in run_command(self, command)
972 cmd_obj = self.get_command_obj(command)
973 cmd_obj.ensure_finalized()
--> 974 cmd_obj.run()
975 self.have_run[command] = 1
976
C:\Anaconda3\lib\site-packages\numpy\distutils\command\build_ext.py in run(self)
115 verbose=self.verbose,
116 dry_run=self.dry_run,
--> 117 force=self.force)
118 self.compiler.customize(self.distribution)
119 self.compiler.customize_cmd(self)
C:\Anaconda3\lib\site-packages\numpy\distutils\ccompiler.py in new_compiler(plat, compiler, verbose, dry_run, force)
594 raise DistutilsModuleError(("can't compile C/C++ code: unable to find class '%s' " +
595 "in module '%s'") % (class_name, module_name))
--> 596 compiler = klass(None, dry_run, force)
597 log.debug('new_compiler returns %s' % (klass))
598 return compiler
C:\Anaconda3\lib\site-packages\numpy\distutils\mingw32ccompiler.py in __init__(self, verbose, dry_run, force)
56
57 distutils.cygwinccompiler.CygwinCCompiler.__init__ (self, verbose,
---> 58 dry_run, force)
59
60 # we need to support 3.2 which doesn't match the standard
C:\Anaconda3\lib\distutils\cygwinccompiler.py in __init__(self, verbose, dry_run, force)
159 # Include the appropriate MSVC runtime library if Python was built
160 # with MSVC 7.0 or later.
--> 161 self.dll_libraries = get_msvcr()
162
163 def _compile(self, obj, src, ext, cc_args, extra_postargs, pp_opts):
C:\Anaconda3\lib\distutils\cygwinccompiler.py in get_msvcr()
88 # return ['vcruntime140']
89 else:
---> 90 raise ValueError("Unknown MS Compiler version %s " % msc_ver)
91
92
ValueError: Unknown MS Compiler version 1900
InformationsquelleAutor blaz | 2015-12-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Distutils und Numpy/Distutils derzeit keinen support für Visual Studio 2015, Visual C++ 14. Folgende Tipps stammen aus den Python-Fehler Bericht, ich war in der Lage, um den patch die notwendigen Dateien und den erfolgreichen Aufbau der Erweiterung mit einer neuen Installation von Python-3.5 von Anaconda und Mingw64 mit GCC 5.2.0 läuft innerhalb MSYS2 auf Windows 7. Ich habe nicht Visual Studio installiert. Die Lösung war der patch ein distutils-Datei und zwei numpy/distutils-Dateien (wenn dies zutrifft). Diese patches wurden eingereicht für die Aufnahme in zukünftige Revisionen.
Können Sie die patches angebracht, sich für eine schnelle Lösung:
UPDATE
Bitte beachten Sie, dass, während die patches oben gearbeitet, für mich war es nicht akzeptiert für die Aufnahme in den upstream. Die änderungen, die kam mit VS 2015 sind komplexer, als ich Sie geschätzt.
InformationsquelleAutor
Ich folgende änderungen vorgenommen, und es funktionierte für mich mit den folgenden Konfigurationen.
Habe ich Folgendes
C:\mingw-w64\x86_64-7.1.0-posix-seh-rt_v5-rev0\mingw64\bin
für mich)gcc
funktioniert ( ich habe keine andere Compiler)distutils.cfg
imC:\Python36\Lib\distutils
Fügen Sie Zeilen in die Datei:
Manuelle Anwendung dieser patch
vcruntime140.dll
und setzen es inC:\Python36\libs
Ich kann bestätigen, dass dieser funktioniert auf Windows 10 mit Anaconda 3
Wenn Sie nicht machen es Arbeit geben compiler=mingw32.exe versuchen auch - bei mir hat es geklappt, beim compiler=mingw32 nicht.
PS: Wenn Sie der Verwendung von anaconda wird, kopieren Sie einfach
vcruntime140.dll
ausD:\Anaconda3\Library\bin\vcruntime140.dll
zusomewhere\Python3.6\libs
Hi, ich versuche das gleiche, aber wenn ich in pyrfc: python setup.py installieren bekomme ich diesen Fehler: error Microsoft Visual C 14.0 erforderlich ist
InformationsquelleAutor
Ich auf das gleiche problem und herausgefunden, dass das Problem mit dem mingw-compiler. Ich habe versucht, die patches vorgeschlagen von @tharen, aber es funktionierte nicht für mich.
Scheint es, dass cygwin ' s Lieblings-compiler für windows ist visual c++, so dass ich heruntergeladen habe, nur die visual c++ - build-tools von http://landinghub.visualstudio.com/visual-cpp-build-tools
und dann funktionierte es gut.
Beachten Sie, dass Sie deinstallieren müssen mingw und alle Verweise darauf, dass Sie in Ihrem Projekt enthalten. Insbesondere hatte ich zum löschen eines distutils.cfg-Datei, die ich erstellt hatte, hatte der folgende code zeigt auf mingw
InformationsquelleAutor
Wenn noch jemand dieses problem hat,ich lief einfach in ihn während der Installation und python yowsup-axolotl, das ist, was ich getan habe, um es zu lösen:
1 - installieren Sie den patch von Tharen in python cygwinccompiler.py Datei (befindet sich in Ihrer python-installation Ordner) https://bugs.python.org/file40608/patch.diff
2-Mit mingw installieren pexports, öffnen Sie ein terminal im administrator-Modus und geben Sie ein:
2-Gehen Sie in den python-Ordner installieren, in meinem Fall war es C:\Program Files (x86)\Python36-32
immer noch in der gleichen Klemme, die wir verwendet, um zu installieren pexports, nach der Navigation zu den python-Ordner installieren führen Sie die folgenden:
Dann gehen Sie zurück zu dem Ordner, wo Sie installiert wurden die Bibliothek, oder was auch immer Sie Taten, bevor, jetzt sollte es funktionieren.
btw, vergessen Sie nicht, fügen Sie
in die distutils-Datei.
Quelle: eigener Beitrag und https://bugs.python.org/issue25251
pexports
istgendef
im mingw-w64-i686-tools oder mingw-w64-x86_64-tools unter msys2 .InformationsquelleAutor
Ich nur machte er folgende änderungen und es funktionierte wie ein Charme!
Datei Bearbeiten distutils.cfg vorhanden in Standorte:
Ändern der Inhalte von distutils.cfg :
P. S. Wahrscheinlich ändert sich nur in der 2. Position sollte es auch tun.
P. P. S Stellen Sie sicher, dass gcc installiert ist und im PFAD. Für mich TDM-GCC-64 installiert wurde
InformationsquelleAutor
Details in link half mir lösen dies wie ein Charme.
Gerade kommentiert
get_msvcr()
im cygwinccompiler.py.(vergessen Sie nicht, kommentieren Sie die
else
auch)InformationsquelleAutor