Update msvc build for Visual Studio 2019 v16.4 #17736

pull sipsorcery wants to merge 1 commits into bitcoin:master from sipsorcery:msvc_fix_vs2019 changing 2 files +3 −3
  1. sipsorcery commented at 6:52 PM on December 12, 2019: member

    msvc warning C4834 for the Bitcoin Core build was introduced by Visual Studio 16.4.0. This PR adds an ignore rule for the warning (it's related to the nodiscard attribute and is not considered relevant).

    An additional side effect of the msvc compiler update is the prebuilt Qt5.9.8 libraries cannot be linked due to being built with an earlier version of the compiler. To fix this a new Qt5.9.8 version has been compiled and the appveyor job updated to use them.

    The GitHub Actions job needs to continue to use the original Qt5.9.8 libraries until the latest GitHub Windows image also updates to >= Visual Studio 2019 v16.4.

  2. Update msvc build for Visual Studio 2019 v16.4
    msvc warning C4834 for the Bitcoin Core build was introduced by Visual Studio 16.4.0. This PR adds an ignore rule for the warning (it's related to the nodiscard attribute and is not considered relevant).
    An additional side effect of the msvc compiler update is the prebuilt Qt5.9.8 libraries cannot be linked due to being built with an earlier version of the compiler. To fix this a new Qt5.9.8 version has been compiled and the appveyor job updated to use them. The GitHub Actions job needs to continue to use the original Qt5.9.8 libraries until the latest GitHub Windows image also updates to >= Visual Studio 2019 v16.4.
    75d9317bc1
  3. fanquake added the label Windows on Dec 12, 2019
  4. ryanofsky commented at 7:22 PM on December 12, 2019: contributor

    My suggestion from IRC for dealing with windows compiler and package upgrades was to change appveyor check for pull requests from a simple pass/fail check to something more like:

    (git checkout pr && make check) || (git checkout master && ! make check)
    

    http://www.erisian.com.au/bitcoin-core-dev/log-2019-12-12.html#l-287

    <ryanofsky> i think the compromise for appveyor i was suggesting (show red on a PR if the PR appveyor fails and master passes, green if both pass or both fails) has the best of all worlds <ryanofsky> it gives the windows maintainer time to fix problems if anything breaks, while not bothering anybody else, and still showing red if a PR would break the windows build

  5. sipsorcery commented at 7:29 PM on December 12, 2019: member

    @ryanofsky problem is with a 90 minute cap on the job (and that's with @MarcoFalke intervening to get it from 60 to 90) there's not enough time for two builds. If you look at the appveyor history most builds are between 50 and 60 minutes.

  6. sipsorcery commented at 7:33 PM on December 12, 2019: member

    Job failed due to the old Qt libraries being used. I'll need to add a step to invalidate the Qt cache directory if the SHA256 has changed.

  7. DrahtBot commented at 7:48 PM on December 12, 2019: contributor

    Deleted the cache on appveyor with

    curl -H "Authorization: Bearer $TOKEN" -X DELETE https://ci.appveyor.com/api/projects/DrahtBot/bitcoin/buildcache
    
  8. MarcoFalke referenced this in commit c5e318aea6 on Dec 12, 2019
  9. MarcoFalke merged this on Dec 12, 2019
  10. MarcoFalke closed this on Dec 12, 2019

  11. sipsorcery deleted the branch on Dec 12, 2019
  12. sidhujag referenced this in commit 1e1abb11ad on Dec 13, 2019
  13. sipsorcery cross-referenced this on Dec 15, 2019 from issue Qt5.12.6 on Windows introduces dependency on Wtsapi32.lib by sipsorcery
  14. hebasto cross-referenced this on Dec 22, 2019 from issue ci: GitHub Actions update to Visual Studio 16.4.0 by hebasto
  15. hebasto cross-referenced this on Dec 27, 2019 from issue ci: Migration from AppVeyor to GitHub Actions by hebasto
  16. sipsorcery referenced this in commit 57ab95cf81 on Jan 5, 2020
  17. fanquake referenced this in commit 4330a1ee7f on Jan 5, 2020
  18. fanquake cross-referenced this on Jan 6, 2020 from issue [0.19] Backports by fanquake
  19. laanwj referenced this in commit bb123c6527 on Jan 8, 2020
  20. MarkLTZ referenced this in commit 2e6abb1507 on Mar 13, 2020
  21. MarkLTZ referenced this in commit ece88bae51 on Mar 13, 2020
  22. MarkLTZ cross-referenced this on Apr 4, 2020 from issue Bitcoin PR tracking by MarkLTZ
  23. sidhujag referenced this in commit 6feb0bb9fc on Nov 10, 2020
  24. sipsorcery commented at 8:59 PM on November 14, 2020: member

    Hmm not sure what's going on there. Visual Studio 2019 v16.8.1 came out a couple of days ago and Appveyor pushed the new VS2019 image a few hours ago so it's likely to be the cause. But it was only a minor Visual Studio release which means C++ ABI compatibility should be maintained.

    I'm building locally now to see if I get the same issue.

  25. hebasto commented at 9:54 PM on November 14, 2020: member

    Do we need rollback to the previous image (#19839)?

  26. sipsorcery cross-referenced this on Nov 15, 2020 from issue WIP: Switch appveyor build from Release to Debug by sipsorcery
  27. hebasto commented at 7:15 AM on November 15, 2020: member

    Do we need rollback to the previous image (#19839)?

    #20395

  28. Munkybooty referenced this in commit 861ef02929 on Dec 9, 2021
  29. Munkybooty referenced this in commit fc6f77f098 on Dec 9, 2021
  30. Munkybooty referenced this in commit e32f0d5d86 on Dec 9, 2021
  31. Munkybooty referenced this in commit 16f7583e71 on Dec 23, 2021
  32. bitcoin locked this on Feb 15, 2022

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-05-19 06:54 UTC