doc: update Windows MSVC build guide to utilize winget to install build requirements #34570

pull janb84 wants to merge 1 commits into bitcoin:master from janb84:windows-msvc-update changing 1 files +41 −17
  1. janb84 commented at 10:23 am on February 12, 2026: contributor

    This PR updates the Windows MSVC build guide to bring it more in line with the macOS and Unix build guides.

    Currently the guide listed requirements but left users to manually do the download/installation. The macOS and the Unix guide utilize package managers to provide concrete installation commands that users can follow. By introducing winget, the Windows MSVC build guide now also provides concrete installation commands.

    The changes/commands can be tested on any windows machine, provided it run a Windows 10 (version 1809 (build 17763)) or later (e.g. Windows 11 / Server 2025).

  2. DrahtBot added the label Docs on Feb 12, 2026
  3. DrahtBot commented at 10:23 am on February 12, 2026: contributor

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    ACK hodlinator, hebasto
    Stale ACK frankomosh

    If your review is incorrectly listed, please copy-paste <!–meta-tag:bot-skip–> into the comment that the bot should ignore.

  4. in doc/build-windows-msvc.md:130 in e17ea1e9d9
    126@@ -102,6 +127,6 @@ cmake -B build --preset vs2026 -DVCPKG_MANIFEST_NO_DEFAULT_FEATURES=ON -DVCPKG_M
    127 
    128 Available features are listed in the [`vcpkg.json`](/vcpkg.json) file.
    129 
    130-### 8. Antivirus Software
    131+### 7. Antivirus Software
    


    maflcko commented at 10:58 am on February 12, 2026:
    not sure about numbering. If anyone wants to count to 7, they are free to do so, but I don’t think there is need to do it here

    janb84 commented at 12:16 pm on February 12, 2026:
    Removed most of the numbering, kept 2 who made sense to me . Thanks !
  5. janb84 force-pushed on Feb 12, 2026
  6. hebasto commented at 2:41 pm on February 12, 2026: member
    Concept ACK.
  7. in doc/build-windows-msvc.md:13 in f7a3842d6a
     5@@ -6,24 +6,49 @@ For cross-compiling options, please see [`build-windows.md`](./build-windows.md)
     6 
     7 ## Preparation
     8 
     9-### 1. Visual Studio
    10+### 1. Install Required Dependencies
    11+
    12+The first step is to install the required build applications. The instructions below use `Winget` to install the applications.
    13+
    14+`Winget` is available on Windows 10 version 1809 (build 17763) or later, the applications mentioned can also be installed manually.
    


    frankomosh commented at 9:06 am on February 13, 2026:
    0`Winget` is available on Windows 10 version 1809 (build 17763) or later. The applications mentioned can also be installed manually.
    

    hebasto commented at 12:51 pm on February 13, 2026:
    Could we just write "… available on all supported Windows versions." or something similar avoiding unnecessary version mentioning?

    janb84 commented at 1:03 pm on February 13, 2026:
    Taken, Thanks
  8. in doc/build-windows-msvc.md:43 in f7a3842d6a outdated
    47-Download and install [Git for Windows](https://git-scm.com/downloads/win). Once installed, Git is available from PowerShell or the Command Prompt.
    48+To install Python, run:
    49 
    50-### 3. Clone Bitcoin Repository
    51+```
    52+winget install python3
    


    frankomosh commented at 9:23 am on February 13, 2026:
    Will it help to be more explicit here? i.e something like winget install --id Python.Python.3.12 or Python.Python.3.13 ?

    hebasto commented at 12:45 pm on February 13, 2026:
    I think it’s OK as is, as long it fits the minimum required version.

    janb84 commented at 1:03 pm on February 13, 2026:
    This command will install version 3.14.0, the minimum required version is 3.10. Will keep it this way to reduce file churn in the future.
  9. frankomosh commented at 9:29 am on February 13, 2026: contributor
    Concept ACK
  10. in doc/build-windows-msvc.md:11 in f7a3842d6a
     5@@ -6,24 +6,49 @@ For cross-compiling options, please see [`build-windows.md`](./build-windows.md)
     6 
     7 ## Preparation
     8 
     9-### 1. Visual Studio
    10+### 1. Install Required Dependencies
    11+
    12+The first step is to install the required build applications. The instructions below use `Winget` to install the applications.
    


    hebasto commented at 12:57 pm on February 13, 2026:

    style nit:

    0The first step is to install the required build applications. The instructions below use WinGet to install the applications.
    

    janb84 commented at 1:05 pm on February 13, 2026:
    Both suggestions are incorporated. Hope that you ment by this suggestion to remove both the instances of winget.
  11. janb84 force-pushed on Feb 13, 2026
  12. in doc/build-windows-msvc.md:48 in d693779aa2
    52+winget install python3
    53+```
    54+
    55+### 2. Clone Bitcoin Repository
    56+
    57+`git` should already be installed as a component of Visual Studio. If not download and install [Git for Windows](https://git-scm.com/downloads/win).
    


    hebasto commented at 1:57 pm on February 13, 2026:

    nit:

    0`git` should already be installed as a component of Visual Studio. If not, download and install [Git for Windows](https://git-scm.com/downloads/win).
    
  13. hebasto approved
  14. hebasto commented at 1:57 pm on February 13, 2026: member

    ACK d693779aa29e85dd7d2355720e0019b1c6dcb7c0, tested on Windows 11 Pro 25H2.

    FWIW, Microsoft refers to its package manager as WinGet, not Winget.

  15. DrahtBot requested review from frankomosh on Feb 13, 2026
  16. janb84 force-pushed on Feb 13, 2026
  17. DrahtBot added the label CI failed on Feb 13, 2026
  18. janb84 commented at 2:06 pm on February 13, 2026: contributor
    Taken both Nits, the suggestion of the capital G of WinGet was overlooked in the last change.
  19. hebasto approved
  20. hebasto commented at 2:44 pm on February 13, 2026: member
    re-ACK d916fb1d703443462ec76606855835be046adb09.
  21. hebasto commented at 2:44 pm on February 13, 2026: member
  22. frankomosh commented at 3:01 pm on February 13, 2026: contributor
    crACK d916fb1d703443462ec76606855835be046adb09
  23. DrahtBot removed the label CI failed on Feb 13, 2026
  24. in doc/build-windows-msvc.md:25 in d916fb1d70
    26+
    27+To install Visual Studio 2026 Community with the necessary components, run:
    28+
    29+```
    30+winget install --id Microsoft.VisualStudio.Community `
    31+ --override "--wait --quiet --add Microsoft.VisualStudio.Workload.NativeDesktop --add Microsoft.VisualStudio.Component.Git --includeRecommended"
    


    hodlinator commented at 9:30 am on February 16, 2026:

    nit: Tried pasting it in vanilla cmd and got:

    0C:\Users\hodlinator>winget install --id Microsoft.VisualStudio.Community `
    1The `msstore` source requires that you view the following agreements before using.
    2Terms of Transaction: https://aka.ms/microsoft-store-terms-of-transaction
    3The source requires the current machine's 2-letter geographic region to be sent to the backend service to function properly (ex. "US").
    4
    5Do you agree to all the source agreements terms?
    6...
    

    Not sure if what came after the back-tick was included or not.. slightly unnerving. Would prefer keeping it simple (albeit long lined):

    0winget install --id Microsoft.VisualStudio.Community --override "--wait --quiet --add Microsoft.VisualStudio.Workload.NativeDesktop --add Microsoft.VisualStudio.Component.Git --includeRecommended"
    

    Or explicitly specify:

    0```powershell
    

    janb84 commented at 1:25 pm on February 16, 2026:
    Went with both, single line and powershell. thanks
  25. in doc/build-windows-msvc.md:23 in d916fb1d70
    24-The commands in this guide should be executed in "Developer PowerShell for VS" or "Developer Command Prompt for VS".
    25+Minimum required version: Visual Studio 2026 version 18.3 with the "Desktop development with C++" workload.
    26+
    27+To install Visual Studio 2026 Community with the necessary components, run:
    28+
    29+```
    


    hodlinator commented at 9:35 am on February 16, 2026:

    nit: Unless you go with powershell as suggested in the other comment, might want to use:

    0```shell
    

    …which in in theory enables GitHub to use slightly nicer syntax highlighting here and below.

    0$ git grep \`\`\`shell |wc -l
    118
    
  26. in doc/build-windows-msvc.md:29 in d916fb1d70
    30+winget install --id Microsoft.VisualStudio.Community `
    31+ --override "--wait --quiet --add Microsoft.VisualStudio.Workload.NativeDesktop --add Microsoft.VisualStudio.Component.Git --includeRecommended"
    32+```
    33+
    34+This installs:
    35+- Visual Studio 2026 Community
    


    hodlinator commented at 10:00 am on February 16, 2026:

    nit: Suggest dropping version numbers to decrease churn and adding “Edition”. It’s enough to specify the version above in the “Minimum required version”-paragraph.

    0To install Visual Studio Community Edition with the necessary components, run:
    1
    2```
    3winget install --id Microsoft.VisualStudio.Community `
    4 --override "--wait --quiet --add Microsoft.VisualStudio.Workload.NativeDesktop --add Microsoft.VisualStudio.Component.Git --includeRecommended"
    5```
    6
    7This installs:
    8- Visual Studio
    
  27. hodlinator approved
  28. hodlinator commented at 10:04 am on February 16, 2026: contributor

    ACK d916fb1d703443462ec76606855835be046adb09

    I like how the headers are re-done.

  29. janb84 force-pushed on Feb 16, 2026
  30. doc: update Windows MSVC build guide to utilize WinGet to install apps d159b10398
  31. janb84 force-pushed on Feb 16, 2026
  32. DrahtBot added the label CI failed on Feb 16, 2026
  33. hodlinator approved
  34. hodlinator commented at 1:37 pm on February 16, 2026: contributor
    re-ACK d159b103987f672ec4fbb6ba79ba9db45c24c977
  35. DrahtBot requested review from frankomosh on Feb 16, 2026
  36. DrahtBot requested review from hebasto on Feb 16, 2026
  37. hebasto approved
  38. hebasto commented at 1:41 pm on February 16, 2026: member
    re-ACK d159b103987f672ec4fbb6ba79ba9db45c24c977.
  39. in doc/build-windows-msvc.md:47 in d159b10398
    52+winget install python3
    53 ```
    54+
    55+### 2. Clone Bitcoin Repository
    56+
    57+`git` should already be installed as a component of Visual Studio. If not, download and install [Git for Windows](https://git-scm.com/downloads/win).
    


    fanquake commented at 1:42 pm on February 16, 2026:
    When would git not be installed (given it’s part of the above required install)? Can this just be dropped?

    janb84 commented at 1:47 pm on February 16, 2026:
    My rationale was if users installs everything by hand, this would be a small hint/link where to get it.

    fanquake commented at 1:53 pm on February 16, 2026:
    So should we have the same for Python? Does winget install git not work?

    janb84 commented at 2:03 pm on February 16, 2026:
    Currently the git install is somewhat hidden as a component in the Visual Studio install. Easy to skip if you just install visual studio manually. That’s the also the reason for the hint. (to make it more clear that you should install it). With that rational it is quite clear that python should be installed.
  40. hebasto merged this on Feb 16, 2026
  41. hebasto closed this on Feb 16, 2026

  42. in doc/build-windows-msvc.md:24 in d159b10398
    25+Minimum required version: Visual Studio 2026 version 18.3 with the "Desktop development with C++" workload.
    26+
    27+To install Visual Studio Community Edition with the necessary components, run:
    28+
    29+```powershell
    30+winget install --id Microsoft.VisualStudio.Community --override "--wait --quiet --add Microsoft.VisualStudio.Workload.NativeDesktop --add Microsoft.VisualStudio.Component.Git --includeRecommended"
    


    fanquake commented at 1:48 pm on February 16, 2026:
    Why is override needed here?

    janb84 commented at 1:52 pm on February 16, 2026:
    To pass custom command‑line switches straight to the underlying installer so to include git and the nativedesktop workload etc

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-02-17 06:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me