Source code for pymyinstall.win_installer.win_fix_compiler_c

"""
Various to set up a C++ compiler


:githublink:`%|py|5`
"""
import os


[docs]def switch_to_VS_compiler(python_path, version=12): """ applies fix described in `Build a Python 64 bit extension on Windows 8 <http://www.xavierdupre.fr/blog/2013-07-07_nojs.html>`_ :param python_path: python path :param version: Visual Studio version, 12 = VS2013 :return: impacted files :githublink:`%|py|15` """ name = os.path.join(python_path, "Lib", "distutils", "msvc9compiler.py") with open(name, "r") as f: content = f.read() content = content.replace( "'win-amd64' : 'amd64',", "'win-amd64' : 'x86_amd64',") content = content.replace( "if majorVersion >= 6:", "if majorVersion >= 6 :\n majorVersion = " + str(version)) with open(name, "w") as f: f.write(content) return [name]
[docs]def switch_to_mingw_compiler(python_path): """ applies a fix to use MinGW to compile extensions (does not work with Jupyter) :param python_path: python path :githublink:`%|py|33` """ dirname = os.path.join(python_path, "Lib", "distutils") cfg = os.path.join(dirname, "distutils.cfg") with open(cfg, "w") as f: f.write("""[build] compiler = mingw32 [build_ext] compiler = mingw32 """.replace(" ", "")) return [cfg]