Node-gyp: Windows 10: The build tools for v120 (Platform Toolset = 'v120') cannot be found.

Created on 2 Aug 2015  Â·  63Comments  Â·  Source: nodejs/node-gyp

When installing package via NPM some module had dependency that fired node-gyp rebuild which spawns tons of errors:

Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Cpp.Platform.targets(57,5): error MSB8020: The build t
ools for v120 (Platform Toolset = 'v120') cannot be found. To build using the v120 build tools, please install v120 bui
ld tools.  Alternatively, you may upgrade to the current Visual Studio tools by selecting the Project menu or right-cli
ck the solution, and then selecting "Retarget solution". [C:\Users\nerij\Projects\react-browserify-cli\node_modules\bro
wser-sync\node_modules\socket.io\node_modules\socket.io-client\node_modules\engine.io-client\node_modules\ws\node_modul
es\utf-8-validate\build\validation.vcxproj]
gyp ERR! build error
gyp ERR! stack Error: `C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (c:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:269:23)
gyp ERR! stack     at ChildProcess.emit (events.js:110:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1074:12)
gyp ERR! System Windows_NT 6.3.9600
gyp ERR! command "node" "c:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\nerij\Projects\react-browserify-cli\node_modules\browser-sync\node_modules\socket.io\node_modules\socket.io-client\node_modules\engine.io-client\node_modules\ws\node_modules\utf-8-validate
gyp ERR! node -v v0.12.7
gyp ERR! node-gyp -v v2.0.1
gyp ERR! not ok
npm WARN optional dep failed, continuing [email protected]
npm WARN optional dep failed, continuing [email protected]

This is part of install which gets errors. I fallowed instruction on node-gyp install, however Windows 10 does not allow instal Windows 7 SDKs (I found and installed Windows 10 SDKs, with no efefct). Anyone had same issues?

Windows

Most helpful comment

Guys, this worked for me; add GYP_MSVS_VERSION=2013 to your user environment variables.
i.e. right-click start -> system -> advanced system settings -> environment variables -> "user variables for [username]" -> new
Make sure you open a new console after doing this, so that the environment variable addition is picked up.

All 63 comments

Have you installed visual studio 2015 with visual C++? That helped for me.

The above error is with MVS 2015 C++. Could not do anything here so I completely removed MVS 2015 and installed 2013 C++.

Now it seems to have different error. The error is with too long path names (opened case in stack overflow, since its not node-gyp fault): http://stackoverflow.com/questions/31817447/windows-10-node-gyp-cannot-build-msbuild-failed-with-exit-code-1

Any ideas?

I have same problem in Windows 10 with VS2015&SDK.
:-(

If there were a +1 button, I'd be clicking it myself right now, but there's not, so I'm forced to pollute your issue with my comment. Please accept my humblest apologies. Windows 10 user. VS2015 and VS2013 both installed, and both with C++. utf-8-validate is the offender in my case too.

I'm having problems with Windows 10. VS2015 community installed. I get the following error

Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
MSBUILD : error MSB3428: Could not load the Visual C++ component "VCBuild.exe". To fix this, 1) install the .NET Framework 2.0 SDK, 2) install Microsoft Visual Studio 2005 or 3) add the location of the component to the system path if it is installed elsewhere.   

Guys, this worked for me; add GYP_MSVS_VERSION=2013 to your user environment variables.
i.e. right-click start -> system -> advanced system settings -> environment variables -> "user variables for [username]" -> new
Make sure you open a new console after doing this, so that the environment variable addition is picked up.

@axefrog Thank you!!!!!!

With Windows 8.1 and VS2015 SDK/C++ installed I had to use:

GYP_MSVS_VERSION=2015

(so change the version to what you're using)

BTW what SDK are people using?
Im still using the one from the readme, if anyone gets this working on Windows 10 i would be ever so grateful if you could write a walkrthough, step by step guide. I've been struggling with this for the past few days now

@pjquinn I now get this error instead:

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\CodeAnalysis\Microsoft.CodeAnalysis.targets(214,5): error MSB4175: The task fac
tory "CodeTaskFactory" could not be loaded from the assembly "C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Build.Tasks.v12.0.dll". Cou
ld not load file or assembly 'file:///C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Build.Tasks.v12.0.dll' or one of its dependencies.
The system cannot find the file specified.

Can anyone help? :(

Maybe try VS2015 w/ C++ and set env variable: GYP_MSVS_VERSION=2015

I'm on win 8.1 though, not 10

@pjquinn that didn't work for me :-(

@jayflux I also ended up installing beta npm@3 (using 3.3.0 currently), I'm not sure which of the above finally made it work, but it does now, at least on Win 8.1

@pjquinn finally got it working by uninstalling Visual Studio 2015 and installing 2013, then i ran

set GYP_MSVS_VERSION=2013
npm install --msvs_version=2013

So 2013 deffo works on windows 10, not sure why 2015 fails

@Jayflux what version of window, vs, and sdk are you using now?

@zhaoyao91
Windows 10
Visual Studio 2013
I have both SDK 7.1 and SDK 10 installed, I think its using 10 (any way for me to confirm this)?
set GYP_MSVS_VERSION=2013
npm install --msvs_version=2013

@Jayflux confirmed. Your method works. I completely removed all Microsoft associated build tools from Add/Remove Program panel. Then fresh clean install of VS2013 with no addons.

set GYP_MSVS_VERSION=2013
npm install --msvs_version=2013

It works. Tho, npm install --msvs_version=2013 dropped bunch of erros... I don't care - _works_.

@Jayflux, thanks

Finally, it woks for me, all I need are:
windows 10 64-bit
node.js 0.12.x
python 2.7.x
vs 2013
(SDK and GYP_MSVS_VERSION are not needed)

and if both vs 2013 and vs 2015 are installed, set GYP_MSVS_VERSION=2013

I hope this will be helpful for others.

Why would you close this without either (a) adequate documentation or (b) at least a fix to look in both locations? That's lazy.

Yeah this should not be closed. For one support for VS 2015 should be available. I shouldn't have to uninstall and reinstall VS to get this thing to build

I managed to build with VS 2015 Community Edition under Windows 10. Turns out Microsoft decided to move the C-Runtime library to be part of the Operating System. I had to manually add the new locations of the header and library files to the file located at %HOMEPATH%.node-gyp\0.12.7\common.gypi.

(...)
    # Forcibly disable -Werror.  We support a wide range of compilers, it's
    # simply not feasible to squelch all warnings, never mind that the
    # libraries in deps/ are not under our control.
    'cflags!': ['-Werror'],
    'msvs_settings': {
      'VCCLCompilerTool': {
        'StringPooling': 'true', # pool string literals
        'DebugInformationFormat': 3, # Generate a PDB
        'WarningLevel': 3,
        'BufferSecurityCheck': 'true',
        'ExceptionHandling': 1, # /EHsc
        'SuppressStartupBanner': 'true',
        'WarnAsError': 'false',
        # ADDED
        'AdditionalIncludeDirectories': [ 'C:/Program Files (x86)/Windows Kits/10/Include/10.0.10240.0/ucrt' ],
      },
      'VCLibrarianTool': {
      },
      'VCLinkerTool': {
        'conditions': [
          ['target_arch=="ia32"', {
            'TargetMachine' : 1, # /MACHINE:X86
            # ADDED
            'AdditionalLibraryDirectories': [ 'C:/Program Files (x86)/Windows Kits/10/Lib/10.0.10240.0/ucrt/x86' ],
            'target_conditions': [
              ['_type=="executable"', {
                'AdditionalOptions': [ '/SubSystem:Console,"5.01"' ],
              }],
            ],
          }],
          ['target_arch=="x64"', {
            'TargetMachine' : 17, # /MACHINE:AMD64
            # ADDED
            'AdditionalLibraryDirectories': [ 'C:/Program Files (x86)/Windows Kits/10/Lib/10.0.10240.0/ucrt/x64' ],
            'target_conditions': [
              ['_type=="executable"', {
                'AdditionalOptions': [ '/SubSystem:Console,"5.02"' ],
              }],
            ],
          }],
        ],
        'GenerateDebugInformation': 'true',
        'RandomizedBaseAddress': 2, # enable ASLR
        'DataExecutionPrevention': 2, # enable DEP
        'AllowIsolation': 'true',
        'SuppressStartupBanner': 'true',
      },
    },
    'msvs_disabled_warnings': [4351, 4355, 4800],
(...)

I didn't check why VS doesn't find it's C-Runtime by itself and there may be a fancier solution for this. For example I have to manually maintain the paths. But I was able to build socket.io with all dependencies.

@fresc81 is this something you could put into a pull request?
OR does there need to be some logic to check what OS you're on?

@all
Whats the action needed here?

This is what worked for me on Windows 10 Pro (x64) with Visual Studio 2015: http://stackoverflow.com/q/32556295/1050784

Simply running npm install --msvs_version=2015 after deleting node_modules fixed this issue for me on Win7 with VS2015. I also did a set GYP_MSVS_VERSION=2015 and closed/opened console, but not sure if that's related.

The task for this ticket is for someone to find a fully working solution for windows 10 and document it. (at the moment there are still different solutions mentioned in this thread)

This might involve getting a VM with windows 10 on it and starting from scratch.
Once we know for sure the correct steps, we need to write them into the Readme

@Jayflux I am working on a blog for this currently.

I am going to document the steps I took on my computer and the steps I took on a fresh VM.

I will provide a link when it is done.

Thanks @nullivex you're a hero

@Jayflux Okay here it is. Took all afternoon but I got this working pretty flawlessly on a new installation. I also got my local desktop working.

Here is the blog I put together about the issue: http://www.serverpals.com/blog/building-using-node-gyp-with-visual-studio-express-2015-on-windows-10-pro-x64

It is lengthy but it covers the entire installation process.

I would say the highlights are the following

  • Install the latest npm which is 3.3.6 at the time of writing
  • Install Visual Studio Community 2015 Edition. Select Visual C++ during the installation (might not be completely neccessary)
  • Set the environment variable GYP_MSVS_VERSION=2015
  • Run the command prompt as Administrator

Hopefully this helps someone!

@nullivex could you take a look at my PR?
https://github.com/nodejs/node-gyp/pull/766/files

If you're fine with it maybe we can merge that and close this ticket

@Jayflux the pull request looks great! However, I would note that if you use the environment variable GYP_MSVS_VERSION there is no need for npm install --msvs_version=2015 the regular npm install will work fine.

@nullivex added, maybe we can merge and close now (whoever maintains this repo)

According to https://github.com/nodejs/node-gyp/issues/629#issuecomment-153196245 the better approach is to run npm config set msvs_version 2015 --global once, instead of defining environment variable. Also, no need to install full blown VS now, just the "Build Tools" which has 2015 compiler, SDKs etc.

@jasonwilliams200OK do you have a link to the Build Tools which need installing for Windows 10?
Thanks

@Jayflux, https://www.microsoft.com/en-us/download/details.aspx?id=49512. You may want to wait till Nov 18 for VS2015 Update 1 RTM (TBA in Connect2015 event), which has more C/C++ features and bug fixes. You would be able to download it from http://visualstudio.com/.
You may also want to check last ~20 comments on #629, starting from this Microsoft employee's comment: https://github.com/nodejs/node-gyp/issues/629#issuecomment-153196245.

@jasonwilliams200OK's solution worked for me. Thanks

@jasonwilliams200OK would you be able to give some better installation details in bullet point form and maybe we can add them to the README.md then close this issue

Thanks

@jasonwilliams200OK nice
Did you want to make a PR changing the documentation (windows bit) with your Q&A you have there?
If not i can do it

Then maybe we could close this issue

@Jayflux, IMO, this issue can be close with the solution:

If you have VS2015 installed and you are hitting this error (MSB8020) or MSB4019, you have somehow a wrong msbuild in your PATH. To remedy it permanently, add %ProgramFiles(x86)%\MSBuild\14.0\Bin; in case of 64-bit Windows or %ProgramFiles%\MSBuild\14.0\Bin; in 32-bit Windows at the beginning of PATH under System Environment variables. For VS2013, replace 14.0 with 12.0 and so on.

For the rest of the predicaments, follow this guide: //github.com/nodejs/node-gyp/issues/629#issuecomment-158163655 which will eventually land in the repo's docs after getting some more feedback and reiterating. I will eventually do the pull request.

@nerijusgood, the second issue you are experiencing is MSB3491. Long story short, this is fixed by npm v3 which comes bundle with node.js v5+.

Long story

npm before v3 used to have a command-line option called --dedup. Consider the scenario where you are dependent on package A and B and both A and B are further dependent on package C, then both A and B directories (under your node_modules directory) are having their own nested node_modules directories with package C: node_modules\C. Then C may depend on N-level deep nested dependency chain till the packages which are only using core features of node.js runtime. A rabbit hole. The --dedup switch used to purge out C under A\node_modules and B\node_modules and put C at same level of A and B. This was not the default behavior, which breaks packages with long dependency chains on Windows due to 256 character limit. Even on any operating system npm install .. was producing quite an amount of unnecessarily extra / redundant churn.

With npm 3, it is fixed as now npm install actually does a lot more than what --dedup used to: it flattens all the packages to single hierarchy under node_modules. In case there is a version conflicts, it then keeps both versions by semver rules, i.e. iff major versions are different then keep both, if minor or patch versions are different keep the latest.

For some reason, I cannot update node.js

You can still self-update npm npm install npm@latest -g or [email protected] (that's pacakged with your version of node.js).

For some reason, I cannot update npm as well

Then you might want to look into the package called fenestrate, which was the main source of inspiration behind npm3's flattening behavior.

Had the same problem on Win10. "npm install --msvs_version=2013" helped me. And msvs_version can be set in npm config

why the fugg is microshizzle forcing us to install visual studio to have nodejs work on its OS?

You need a c++ compiler. And Microsoft happens to be the only place to get
a free one for Windows.

If you use node apps that dont need compiled modules. They you can skip
this.
On Jan 13, 2016 9:12 AM, "hayesmaker" [email protected] wrote:

why the fugg is microshizzle forcing us to install visual studio to have
nodejs work on its OS?

—
Reply to this email directly or view it on GitHub
https://github.com/nodejs/node-gyp/issues/679#issuecomment-171345370.

npm config set msvs_version 2015 -g with visual studio 2015.

worked fine for me (was installing browser-sync globally)

@hayesmaker why the fugg is microshizzle forcing us to install visual studio to have nodejs work on its OS?

@jasonwilliams200OK is this still the case? I thought the Microsoft guys were working on shipping a standalone Visual C++ package that we could use without having to download the whole of VS?
Im sure this was in another thread but i can't find it

_[C/C++ compiler is required just for those packages that are using native libraries; i.e. few percent of the entire npm world! and this requirement is for all platforms, not only Windows.. see the FFI proposals to node.js which will wave this requirement in future]_

@Jayflux, yup we just need VC++ Build Tools 2015 without installing the full-blown VS; that was all over the news, the most famous thread on GitHub: https://github.com/nodejs/node-gyp/issues/629 :smile:

Announcement: http://blogs.msdn.com/b/vcblog/archive/2015/11/02/announcing-visual-c-build-tools-2015-standalone-c-tools-for-build-environments.aspx

Update: https://blogs.msdn.microsoft.com/vcblog/2016/02/16/try-out-the-latest-c-compiler-toolset-without-waiting-for-the-next-update-of-visual-studio/

@jasonwilliams200OK So what about now for us noders@windows after the the update you mentioned? Do we need both nuget and Windows Development Kit or just the later?

@krave1986, nuget package manager is to keep the toolchain in your VS projects. For noders, this is not the requirement, but people (package developers) can do clever things with that option in the mix: Like script a postbuild.js to wget nuget.exe from nuget.org, download the build tools if missing then trigger the msbuild from installed package. Otherwise, if user already had build tools or VS installed, then script will just jump to the build step consuming that installed machinery.

Again, the best thing would be to avoid native compilation on install target through and through. This is possible with FFI, where node.js devs will offload the requirement of providing the native library to consumer (download the dll or dylib or so file from www.example.org or through your system package manager), and the JavaScript will call that native lib through node.js provided foreign function interface (yet to arrive) capability.

@jasonwilliams200OK are you able to update the readme if thats the case? as i think you have the best knowledge of what to do.
I think the readme still says install VS

@Jayflux, actually those were published in Microsoft fork by @mousetraps at: https://github.com/Microsoft/nodejs-guidelines/blob/master/windows-environment.md#prerequisites.

And we have a PR open (https://github.com/nodejs/node-gyp/pull/867) to update the readme (ran into a few snags while adding to CI that we can hopefully address that in the next build tools release. So close! :smiley:)

oh awesome, thanks @mousetraps!

This is a nasty issue :frowning: I am experiencing the same issue reported by the OP. My exact config:

  • Windows 10 (64 bit, version 1511 OS Build 10586.218)
  • GitHub shell (3.0.17.0)
  • nodejs (v5.10.1)
  • npm (3.8.3)
  • python (2.7.10)
  • Visual Studio (Community - 2015 Update 2; including Visual C++ and all sub components)

The npm install I'm running performed several compiles using node-gyp. It was originally failing because node-gyp was defaulting to V110 (which didn't exist on my machine)
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.Cpp.Default.props

I performed the steps @mousetraps outlined here, notably:

  • installing the Windows 8.1 SDK
  • installing the Windows 10 SDK
  • opening a shell, post-install, and running:
npm config set python python2.7
npm config set msvs_version 2015 --global

Just for fun, I've rebooted to make sure things take effect. npm install now fails with this error:
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.Cpp.Platform.targets(64,5): error MSB8020: The build tools for v140 (Platform Toolset = 'v140') cannot be found. To build using the v140 build tools, please install v140 build tools. Alternatively, you may upgrade to the current Visual Studio tools by selecting the Project menu or right-cli ck the solution, and then selecting "Upgrade Solution...".

Notice how it's using the path for V120, but likely passing msbuild the params for 140. I tried to work around this by doing the following:

  • setting environment variable GYP_MSVS_VERSION=2015
  • setting PATH=C:\Program Files (x86)\MSBuild14.0\Bin;%PATH%
  • setting VCTargetsPath="C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140"

None of these work. Why is VCTargetsPath being resolved to V120, and not V140?

Glad I didn't give up- I believe I fully understand the issue :smile: Hopefully this helps someone and @mousetraps, you might consider adding this to https://github.com/nodejs/node-gyp/pull/867 (or at least linking to this issue).

The problem

Installing Visual Studio 2013 before or alongside installing Visual Studio 2015 will corrupt the default values used for MSBuild in the Windows registry. Specifically, it corrupts what MSBuild evaluates VCTargetsPath as (incorrectly evaluating it to an older path).

Supporting data

  • A fresh install of Windows as documented by @nullivex does not have this issue when Visual Studio 2015 is installed.
  • The workaround suggested by @mousetraps does seem to help a decent number of folks. I suspect it helped because they uninstalled/re-installed, which may have fixed the registry.
  • Visual Studio is a complicated piece of software and having two side-by-side installs does cause conflicts. This thread on StackOverflow has data for different situations that customers experienced, because of which versions of Visual Studio and probably the order they installed them in.

My work-around

In my case, I had uninstalled Visual Studio 2013, but I never uninstalled/re-installed Visual Studio 2015... I only modified an existing installation.

I was able to force MSBuild to use Visual Studio 2015 by only doing the following:

  • Setting the environment variable GYP_MSVS_VERSION=2015, per the documentation
  • Running the steps @mousetraps outlined:

    • installing SDK for Windows 8.1/Windows 10

    • npm config set python python2.7

    • npm config set msvs_version 2015 --global

  • Setting the environment variable VisualStudioVersion=14.0
  • Moving my old MSBuild directory (which didn't get uninstalled) out of the way, like so mv "C:\Program Files (x86)\MSBuild\12.0" "C:\Program Files (x86)\MSBuild\12.0_OLD"

At this point, it resolves to the correct version... although I experienced the error:
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\CodeAnalysis\Microsoft.CodeAnalysis.targets(219,5): error MSB4175: The task factory "CodeTaskFactory" could not be loaded from the assembly "C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Build.Tasks.v12.0.dll". Could not load file or assembly 'file:///C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Build.Tasks.v12.0.dll' or one of its dependencies. The system cannot find the file specified. [C:\Users\Brian\Projects\browser-laptop\node_modules\bloom-filter-cpp\build\bloom-filter-cpp.vcxproj]

For this, I copied the DLL from the MSBuild folder I renamed above. That fixed the issue.
cp "C:\Program Files (x86)\MSBuild\12.0_OLD\Bin\Microsoft.Build.Tasks.v12.0.dll" "C:\Program Files (x86)\MSBuild\14.0\Bin\Microsoft.Build.Tasks.v12.0.dll"

I've tried everything in the workaround except for the last step, since I've never had a MSBuild\12.0 folder; my machine only has MSBuild\14.0 installed.

I keep on experiencing the following error on npm install:

error MSB4019: The imported project "C:\Program Files
(x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.Cpp.Default.props" was not found.

The packages utf-8-validate and bufferutil seem to be the culprits.
As you can see, it looks into the V11 folder, and I only have a v140 folder in my machine.

Noe that this doesn't happen when I run npm install from a Command Prompt with Administrator rights.

But I should be able to run this from a normal PowerShell with posh-git as well. Any ideas?

node-gyp: v3.4.0
Windows 10 and full VS2013 and VS2015 installed (tried on 2 machines).
Setting --msvs_version=2015 and GYP_MSVS_VERSION=2015 does not help.
Only after changing PATH it seems to work:
set PATH=C:\Program Files (x86)\MSBuild\14.0\Bin;%PATH%

for using vs2013 it's required the similar :
set PATH=C:\Program Files (x86)\MSBuild\12.0\Bin;%PATH%

how the hell should I understand which VC++ version a package require? Why node-gyp's script can not declare it?! Why node-gyp can find a working VC++ version on machine?
that's all simply terrible.

These official guidelines resolved my problem:

https://github.com/nodejs/node-gyp#installation
https://github.com/Microsoft/nodejs-guidelines/blob/master/windows-environment.md#resolving-common-issues

For the summary, Properly install of Python2.7, C++ build tools, then walk through Resolving common issues section on the Microsoft's nodejs guideline should help.

My problem was the MSBuild pointed by the PATH environment variable was not the expected version.

Correct one is "C:\Program Files (x86)\MSBuild14.0\Bin\MSBuild.exe" (Visual Studio 2015 build tools installed)

msbuild -version

Microsoft (R) Build Engine version 14.0.25420.1
Copyright (C) Microsoft Corporation. All rights reserved.

14.0.25420.1

Ran again npm install, and worked like a charm.

The fix for me was to do this in Microsoft Visual Studio 2017:
project -> Retarget_solution
Platform toolset

and then:

project -> Retarget_solution
Windows SDK version

After that, it built with no issues.

https://www.npmjs.com/package/windows-build-tools

npm install --global windows-build-tools

Installs all dependencies as needed

I believe this can be closed now.

In general the recommendation is always to use the same PlatformToolset for addons and for the node engine itself. This means the same compiler should be used to build node and addons.

Older versions of node were built with VS2013, since 6.3.0 I think VS2015 is used.

In general the recommendation is always to use the same PlatformToolset for addons and for the node engine itself. This means the same compiler should be used to build node and addons.

Doesn't this mean in effect we only support building native modules on Windows with one version of Visual Studio?

one should not mix, currently node binaries from nodejs.org are built with VS2015 and PlatformToolkit v140. But one can easily build node yourself with own version of VisualStudio and build modules as needed.

node-gyp: v3.4.0
Windows 10 and full VS2013 and VS2015 installed (tried on 2 machines).
Setting --msvs_version=2015 and GYP_MSVS_VERSION=2015 does not help.
Only after changing PATH it seems to work:
set PATH=C:\Program Files (x86)\MSBuild\14.0\Bin;%PATH%

for using vs2013 it's required the similar :
set PATH=C:\Program Files (x86)\MSBuild\12.0\Bin;%PATH%

how the hell should I understand which VC++ version a package require? Why node-gyp's script can not declare it?! Why node-gyp can find a working VC++ version on machine?
that's all simply terrible.

This is twice as terrible if you don't have admin rights (installations are possible yet it might take a long time to be done) due to some corporative standards)))))

closing due to staleness, windows support has evolved somewhat since this was opened, please open a new issue if there's a new specific thing that can be discussed

Was this page helpful?
0 / 5 - 0 ratings