Information System : Linux apprendre2 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
Disable Function : NONE
3
\KT @ s d Z ddlZddlZddlZddlZddlZddlmZmZm Z m
Z
mZ ddlm
Z
mZ ddlmZ ddlmZ ddlmZ dd Zd
d Zdd
Zdd ZdddZdddZedgZG dd de
ZdS )a distutils._msvccompiler
Contains MSVCCompiler, an implementation of the abstract CCompiler class
for Microsoft Visual Studio 2015.
The module is compatible with VS 2015 and later. You can find legacy support
for older versions in distutils.msvc9compiler and distutils.msvccompiler.
N)DistutilsExecErrorDistutilsPlatformErrorCompileErrorLibError LinkError) CCompilergen_lib_options)log)get_platform)countc $ C s yt jt jdt jt jB d} W n tk
r< tjd dS X d}d }| xt D ]}yt j | |\}}}W n tk
r P Y nX |rT|t j
krTtjj
|rTytt|}W n ttfk
r wTY nX |dkrT||krT|| }}qTW W d Q R X ||fS )Nz'Software\Microsoft\VisualStudio\SxS\VC7)accesszVisual C++ is not registeredr )NN)winregZ OpenKeyExHKEY_LOCAL_MACHINEZKEY_READZKEY_WOW64_32KEYOSErrorr debugr Z EnumValueZREG_SZospathisdirintfloat
ValueError TypeError)keybest_versionbest_dirivvc_dirZvtversion r %/usr/lib64/python3.6/_msvccompiler.py_find_vc2015 s0
r" c
s dd l dd l} d}d }g fdd}| j|d}|j |j xD ]~\}}}}d|krLtjj|ddd} tjj| sqLytd d
|j dD }
W n t
tfk
r wLY nX |
|krL|
| }}qLW y|d }W n tk
r d }Y nX ||fS )
Nr c s j j d S )N)extendfindallr )_distutils_findvsall_packagesr r! _getallD s z_find_vc2017.._getall)targetz1Microsoft.VisualStudio.Component.VC.Tools.x86.x64ZVCZ AuxiliaryZBuildc s s | ]}t |V qd S )N)r ).0r r r r! P s z_find_vc2017...)r )
r% threadingZThreadstartjoinr r r tuplesplitr r
IndexError)r, r r r' tnameZversion_strr Zpackagesr r r )r% r&