-
Notifications
You must be signed in to change notification settings - Fork 3.7k
C++ fails to link with the latest windows-2022 image #9398
Description
Description
After upgrading to the latest window-2022 image(20240218.2.0), we have experienced a regressing in our CI.
The builds are now failing to link against the C++ STL that is part of VS2022, specifically when looking for external symbol _Thrd_sleep_for.
It seems that the symbol that is missing was added to the microsoft STL in october and later removed.
This problem was not present on the previous windows-2022 image that we used(20240211.1.0) which used the previous version of Visual Studio.
Platforms affected
- Azure DevOps
- GitHub Actions - Standard Runners
- GitHub Actions - Larger Runners
Runner images affected
- Ubuntu 20.04
- Ubuntu 22.04
- macOS 11
- macOS 12
- macOS 13
- macOS 13 Arm64
- macOS 14
- macOS 14 Arm64
- Windows Server 2019
- Windows Server 2022
Image version and build link
Version: 20240218.2.0
Build link: https://github.com/man-group/ArcticDB/actions/runs/8013580338/job/21890848652
Is it regression?
yes, this worked on version 20240211.1.0, link - https://github.com/man-group/ArcticDB/actions/runs/7975239466/job/21772986969
Expected behavior
The linking against the C++ STL should be successful.
Actual behavior
It is failing to link against external symbol _Thrd_sleep_for:
Creating library arcticdb\arcticdb_ext.lib and object arcticdb\arcticdb_ext.exp
aws-cpp-sdk-core.lib(ub_core.cpp.obj) : error LNK2001: unresolved external symbol _Thrd_sleep_for
folly.lib(GuardPageAllocator.cpp.obj) : error LNK2001: unresolved external symbol _Thrd_sleep_for
folly.lib(DistributedMutex.cpp.obj) : error LNK2001: unresolved external symbol _Thrd_sleep_for
azure-storage-blobs.lib(blob_responses.cpp.obj) : error LNK2001: unresolved external symbol _Thrd_sleep_for
azure-core.lib(retry_policy.cpp.obj) : error LNK2001: unresolved external symbol _Thrd_sleep_for
folly.lib(Request.cpp.obj) : error LNK2001: unresolved external symbol _Thrd_sleep_for
folly.lib(CPUThreadPoolExecutor.cpp.obj) : error LNK2001: unresolved external symbol _Thrd_sleep_for
folly.lib(Hazptr.cpp.obj) : error LNK2001: unresolved external symbol _Thrd_sleep_for
folly.lib(ThreadLocalDetail.cpp.obj) : error LNK2001: unresolved external symbol _Thrd_sleep_for
arcticdb\arcticdb_ext.cp39-win_amd64.pyd : fatal error LNK1120: 1 unresolved externals
Repro steps
- Start a build on https://github.com/man-group/ArcticDB/actions/workflows/build.yml