Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>You'll receive such error only for packages (or one of package's dependencies) that has <a href="http://docs.python.org/2/extending/extending.html" rel="nofollow">CPython</a> extensions. Pip internally: </p> <ul> <li>downloads the source </li> <li>runs <a href="http://docs.python.org/2/distutils/" rel="nofollow">distutils</a> <code>python setup install</code> </li> <li><code>install</code> prepares setup files and tries to build <a href="http://docs.python.org/2/extending/extending.html" rel="nofollow">CPython</a> extensions in <a href="http://docs.python.org/2/distutils/apiref.html#module-distutils.msvccompiler" rel="nofollow">windows</a> environment</li> <li>windows environment calls MS Visual Studio <code>vcvarsall.bat</code> script which setups DOS environment variables to enable MS Visual Studio's C compiler in the shell</li> <li>if <code>vcvarsall.bat</code> is not found - you'll get this message</li> </ul> <h1>Usual solution</h1> <p>For python libraries which have <a href="http://docs.python.org/2/extending/extending.html" rel="nofollow">CPython</a> extensions that are portable on windows, it is usual to have <strong>windows binary package</strong>, which are downloadable from pypi or library web site. </p> <p>In such cases it is more suitable (and painless) to <strong>install library by downloading and running windows binary package</strong>.</p> <p>There is a feature request for <code>pip</code> to <a href="https://github.com/pypa/pip/issues/520" rel="nofollow">Add support for installation of binary distutils packages on Windows</a>.</p> <h1>New way to do it - wheels</h1> <p>Thanks to comment from @warren-p: <em>That feature request has been superseeded by Wheels support in PIP.</em></p> <p>Official description: <em>A wheel is a ZIP-format archive with a specially formatted filename and the .whl extension.</em></p> <p>As I have understood, if there is windows binary package with extension .whl then start by installing wheel first:</p> <pre><code># Make sure you have the latest pip that supports wheel pip install --upgrade pip pip install wheel </code></pre> <p>and then install .whl like this:</p> <pre><code>pip install full-path-or-url-to-your-library.whl </code></pre> <p>References:</p> <ul> <li><a href="http://pythonwheels.com" rel="nofollow">pythonwheels.com</a></li> <li><a href="https://pypi.python.org/pypi/wheel" rel="nofollow">https://pypi.python.org/pypi/wheel</a></li> <li><a href="http://wheel.readthedocs.org/en/latest/" rel="nofollow">http://wheel.readthedocs.org/en/latest/</a></li> </ul>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload