How can I tell exactly which version of Microsoft Build Tools I need to install?

Viewed 39

I'm trying to build a wheel for my Python project and it works just fine on my development machine, but when I try and do the same thing on a CI runner, it fails on building the Cython extension:

running build_ext
building 'farm.rasters.water_fill' extension
error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/

I do have build tools installed, but either I don't have the exact version/components required or I'm missing an environment variable telling Python where to find it. How do I find out what I need to install?

This post was very helpful in telling me which version of Build Tools I need:

> python -c "import sys;print(sys.version)"
3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:59:51) [MSC v.1914 64 bit (AMD64)]

v.1914 is Build Tools version 15.7 and I think I've installed that, but I'm still getting the error. Here are the currently installed components (there are a few versions of the SDK included because there are other Python executables on the machine and I wanted to try them all). MS Build Tools installer details

What am I missing? I've tried building the wheel in Powershell, cmd, and Visual Studio 2017 command prompt and get the same error every time. I've also tried running vcvarsall.bat in the shell and setting environment variables and PATHs manually before running the build, but that doesn't help either.

0 Answers
Related