Skip to content

Linkage error when compiling natively on x86_64-pc-windows-msvc #821

@rami3l

Description

@rami3l

Problem:

Hi! It's me again 🙇

Since about an hour ago, rustup's CI pipeline (rust-lang/rustup#4105) has been blocked by a failed x86_64-pc-windows-msvc CI workflow, and it looks like a linker warning produced by aws-lc-rs (rust-lang/rustup#4374 (comment)) with the following log:

Log

error: linking with `link.exe` failed: exit code: 4099
  |
  = note: "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC\\14.43.34808\\bin\\HostX64\\x64\\link.exe" "/NOLOGO" "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\rustcw7vfWj\\symbols.o" "<257 object files omitted>" "C:\\a\\rustup\\rustup\\target\\x86_64-pc-windows-msvc\\debug\\deps/{librustup-ca20df542b218b9b.rlib,libopener-91cd5789e81d4662.rlib,libenv_proxy-ce3be43d1b3cc1e6.rlib,libsemver-62380b99f53f[41](https://github.com/rust-lang/rustup/actions/runs/15508652718/job/43666665868#step:17:42)5b.rlib,libzstd-8b2db3e7586f9cef.rlib,libzstd_safe-f0bc128bbaadaa11.rlib,libzstd_sys-4094bb3907382ade.rlib,libxz2-0cf861f2c905b619.rlib,liblzma_sys-29521cdea4d2e319.rlib,libeffective_limits-9389fce464fe36ac.rlib,libsys_info-64445a19d411345d.rlib,libcfg_if-4e2073e9bae95dbf.rlib,libthreadpool-4a179d89ad479bc0.rlib,libnum_cpus-a5b9417d1234f4ea.rlib,libtoml-3e7198ed320e5d3e.rlib,libtoml_edit-891f66008e7f1dd0.rlib,libserde_spanned-5015f82de9fb8291.rlib,libwinnow-0e105335671f529c.rlib,libtoml_write-1b8f0efa3fb35269.rlib,libtoml_datetime-fdb902d2aaa4d4c0.rlib,libhome-58c7ba9f2f647a7d.rlib,libscopeguard-ad510aa6528ea5b8.rlib,libtempfile-b356464469291a6f.rlib,libfastrand-ab1ed69db701fbf6.rlib,libremove_dir_all-a990eb1dfc470cfd.rlib,librayon-51f8acb06190dfb2.rlib,librayon_core-[42](https://github.com/rust-lang/rustup/actions/runs/15508652718/job/43666665868#step:17:43)70976f20e59188.rlib,libcrossbeam_deque-4102d556f26781ae.rlib,libcrossbeam_epoch-48fed9d46e9b7cd1.rlib,libcrossbeam_utils-7571fd02c2e2cdbd.rlib,libnormpath-875ddc9115985bd6.rlib,libretry-5f27ce893f795a11.rlib,librand-bc7c4d81b11a5a02.rlib,librand_chacha-cc59bbf4a3f097ac.rlib,librand_core-fb89168fd633e680.rlib,libgetrandom-533c4dc4655bb031.rlib,libwait_timeout-dd5937b8e810ad7c.rlib,libfs_at-f58f263106df82f8.rlib,libcvt-730060b00736a6d5.rlib,libaligned-58e367ef3cb73051.rlib,libas_slice-1524cda6644628fb.rlib,librustls_platform_verifier-b042f15ad9922840.rlib,libreqwest-b6f9cce8d515b8bf.rlib,libtokio_socks-450d764b30e9eb19.rlib,libthiserror-05a8e819ee465449.rlib,libhyper_rustls-64366d10bf068889.rlib,libhyper_tls-2f8540967f286383.rlib,libtokio_native_tls-0b14cfc76f5c4005.rlib,libtokio_rustls-167a6d148f49d5ae.rlib,librustls-710dfa5a97d03236.rlib,libsubtle-a7f146c46f5591a4.rlib,libwebpki-45765b98512a8864.rlib,libuntrusted-7ad8d918e356eb34.rlib,libaws_lc_rs-718b549e3ffeb89b.rlib,libaws_lc_sys-3fe107a3c1c4f7cf.rlib,librustls_pki_types-e0fa4c1f34979013.rlib,libzeroize-48c45fbeca1260d2.rlib,libserde_urlencoded-1c0ea389673bf26c.rlib,libasync_compression-574ab9be2ace1be2.rlib,libflate2-1402f6b433843933.rlib,libminiz_oxide-b2e902c693306460.rlib,libadler2-35200456cac9a5ff.rlib,liblibz_rs_sys-faec1e2f6969496d.rlib,libzlib_rs-0bb6884956f92ebe.rlib,libcrc32fast-9c7fc0605cbc0fa4.rlib,libtower_http-d729b0cf4eba85df.rlib,libiri_string-fee47d4de2bbff65.rlib,libtower-b26b10e44a6081e7.rlib,libsync_wrapper-2af8e9d408c6ea0f.rlib,libtower_layer-cdde17ae18b6afb3.rlib,libnative_tls-f29541fece31c67a.rlib,libhyper_util-7db23e4170ba6f62.rlib,libbase64-98e3524ba3e6403d.rlib,libipnet-e57f146ae56f4aa5.rlib,libtower_service-2d7dcb00cee5edbd.rlib,libhyper-2642bf195cd321d5.rlib,libwant-900ab299f0a43b7c.rlib,libtry_lock-c8cea9cea2d9e92e.rlib,libhttparse-28b57c05346ba69f.rlib,libh2-ce16cc78b496f2ad.rlib,libindexmap-456830604e20269c.rlib,libequivalent-df1caa4ec0c639fc.rlib,libhashbrown-4087300640718430.rlib,libatomic_waker-c55df8226780848d.rlib,libfutures_channel-d65bcd8a44dea24d.rlib,libtokio_util-8054071c5d05826b.rlib,libhttp_body_util-040deb0486ccbc69.rlib,libhttp_body-edc93d437d28f831.rlib,libfutures_util-18be286fd5db6adf.rlib,libfutures_io-1473dd27664733b1.rlib,libslab-a5823241f0d683de.rlib,libfutures_sink-54b33082742f30ce.rlib,libfutures_task-274e2366b286c180.rlib,libpin_utils-881da389749a3b1c.rlib,libhttp-0dfb7b983ef5fcd7.rlib,libfnv-cf1abd008835cd0b.rlib,libcurl-fd0edfa820f0d9d6.rlib,libcurl_sys-ad4d1b936742d3c1.rlib,liblibz_sys-76128a115c9b2076.rlib,libschannel-e0d3790ced910228.rlib,liblibc-e751b6d9d331aaee.rlib,libtokio_retry-e413384770b848cf.rlib,librand-e79fc5f0c3f4236a.rlib,librand_chacha-b5d6817d8e95117a.rlib,libppv_lite86-62749118d1c4f996.rlib,libzerocopy-0bebebdc3e587975.rlib,librand_core-fe4efd6f3dfd85ee.rlib,libgetrandom-0c2d624e07e674c5.rlib,libpin_project-8a8fa30e19d44670.rlib,liburl-57f35e0054533f30.rlib,libidna-e958d842313cadc5.rlib,libutf8_iter-01fa6e52bb3764f1.rlib,libidna_adapter-69c10ce734450b08.rlib,libicu_properties-b0fc6feddc1a94ed.rlib,libicu_properties_data-f3afd41b695cd575.rlib,libicu_normalizer-323185b3bcd30059.rlib,libicu_normalizer_data-8a521a5d6b71c6e6.rlib,libicu_collections-af32e8b0a8ac3ed8.rlib,libpotential_utf-df25511a6d8547fe.rlib,libicu_provider-78096bdac041c01c.rlib,libicu_locale_core-135104c3d2455c3c.rlib,libtinystr-8a002b435e8b8e15.rlib,liblitemap-7fc637d05e793ad0.rlib,libwriteable-38e8f0f308d3f679.rlib,libzerovec-462b9109e6b05f04.rlib,libzerotrie-9e0cf1b6c2184aa7.rlib,libyoke-7429be6f358aff88.rlib,libstable_deref_trait-a86ba55358a44026.rlib,libzerofrom-052aa2ec22ea250d.rlib,libform_urlencoded-742792b9b8fa3bd1.rlib,libpercent_encoding-3cb6e473cc4a9dfc.rlib,libsha2-c8a3d8522f392ccc.rlib,libcpufeatures-b7f4cfd8010a26fb.rlib,libdigest-13f1047cfbcd3c3f.rlib,libblock_buffer-4922da0697e8e2fe.rlib,libcrypto_common-b2343c8a6ae6b57f.rlib,libgeneric_array-afc8e111ea878387.rlib,libtypenum-02b56669fded5176.rlib,libtar-910b936d94f13823.rlib,libfiletime-9b0a245f9eaebcdf.rlib,libchrono-7033cb6e83e1b494.rlib,libnum_traits-2d7af384adb26ef8.rlib,libenum_map-de646ff0acb2bf3a.rlib,libtokio_stream-adb53f9a1d15f8cc.rlib,libfutures_core-e9f9eb683c34dcf8.rlib,libtokio-817284c047ccf71e.rlib,libsocket2-920d6f615934f8d8.rlib,libwindows_sys-5b986f3482183b3b.rlib,libbytes-4b28670ec0b7f439.rlib,libmio-042371268fcc4c37.rlib,libcc-6f17dfa9637d35ec.rlib,libshlex-980818786b3375d3.rlib,libwindows_registry-9346ef5fa32bec00.rlib,libwindows_strings-676112cdebdf1b81.rlib,libwindows_result-db63f0aea9aaeaa9.rlib,libwindows_link-542f357b1db0d560.rlib,libsame_file-f31aeebe6f3750fa.rlib,libclap_complete-6cc0c40ed54dc435.rlib,libclap-f4a808daf0104d67.rlib,libclap_builder-e198d6dfc2b3d254.rlib,libterminal_size-ddf9f98369ea6817.rlib,libanstream-2ac70b70f2f6a8ca.rlib,libanstyle_query-49c93648ffc2486c.rlib,libis_terminal_polyfill-858adae547d20fc6.rlib,libanstyle_wincon-a9e4fcc362569faf.rlib,libonce_cell_polyfill-76446620e7e2fe24.rlib,libcolorchoice-c74ccf445259466e.rlib,libanstyle_parse-e746adf58ab2d106.rlib,libutf8parse-889ce7d438697b18.rlib,libclap_lex-e0101711c364464b.rlib,libanstyle-5843cfa8a83506e3.rlib,libpulldown_cmark-83b7e0d9f2612d1a.rlib,libbitflags-3e0d00457b8544f5.rlib,libunicase-19882fef81280536.rlib,libthiserror-60fdd9d0a91f5db9.rlib,libstrsim-c03adadb2fedd09b.rlib,libgit_testament-0577cddbaedf52ac.rlib,libtermcolor-9dc092c48509f38c.rlib,libwinapi_util-07da07d6f67a0411.rlib,libwindows_sys-cb46937f6a880c40.rlib,libwindows_targets-ff26a5dba9e9917f.rlib,libitertools-5041a0cec5c4f5eb.rlib,libeither-c232101b653f07ce.rlib,libtracing_subscriber-2558e75809a64054.rlib,libsmallvec-a35e647ef950ff10.rlib,libsharded_slab-9f983022da946477.rlib,liblazy_static-910a5a50fe36d885.rlib,libmatchers-32d3e62c764ffbd8.rlib,libregex_automata-7a7b118844818f72.rlib,libregex_syntax-cdc30e3c8da28aa8.rlib,libregex-8be5c180a09048cc.rlib,libregex_automata-c5b9a8dafae4fd75.rlib,libaho_corasick-f525433a2f097588.rlib,libregex_syntax-d4be0fc3ac45e90c.rlib,libnu_ansi_term-05cc71dba30630ea.rlib,liboverload-dc903238023578f6.rlib,libwinapi-e1fb38c5e2127650.rlib,libtracing-684082fe9a50ae94.rlib,libpin_project_lite-48c5ec4b35422175.rlib,libthread_local-fe2313708f460fa3.rlib,libtracing_log-f2144d4a69c8f229.rlib,liblog-2b078c60e736f7d7.rlib,libtracing_core-5fb623295f44692b.rlib,libonce_cell-d1d5da4d38ee7bbf.rlib,librs_tracing-39ca173dc3594bb6.rlib,libserde_json-374deba5b2d9d644.rlib,libmemchr-1470e19753980936.rlib,libitoa-599e35ca8af9fa26.rlib,libryu-ae8ee359cd7bfcea.rlib,libserde-f6d175d355881f97.rlib,libcfg_if-dce357b8474b9ecc.rlib,libanyhow-eedc8605ac2e4e7e.rlib}.rlib" "<sysroot>\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib/{libstd-*,libpanic_unwind-*,libwindows_targets-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libunwind-*,libcfg_if-*,liballoc-*,librustc_std_workspace_core-*,libcore-*,libcompiler_builtins-*}.rlib" "psapi.lib" "powrprof.lib" "ws2_32.lib" "crypt32.lib" "legacy_stdio_definitions.lib" "bcrypt.lib" "advapi32.lib" "C:\\Users\\runneradmin\\.cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows_x86_64_msvc-0.52.6\\lib\\windows.0.52.0.lib" "kernel32.lib" "advapi32.lib" "ole32.lib" "oleaut32.lib" "C:\\Users\\runneradmin\\.cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows_x86_64_msvc-0.52.6\\lib\\windows.0.52.0.lib" "advapi32.lib" "cfgmgr32.lib" "gdi32.lib" "kernel32.lib" "msimg32.lib" "ole32.lib" "opengl32.lib" "psapi.lib" "shell32.lib" "synchronization.lib" "user32.lib" "userenv.lib" "winspool.lib" "kernel32.lib" "kernel32.lib" "ntdll.lib" "userenv.lib" "ws2_32.lib" "dbghelp.lib" "/defaultlib:libcmt" "/NXCOMPAT" "/LIBPATH:C:\\Users\\runneradmin\\.cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows_x86_64_msvc-0.52.6\\lib" "/LIBPATH:C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC\\14.43.34808\\atlmfc\\lib\\x64" "/LIBPATH:C:\\a\\rustup\\rustup\\target\\x86_64-pc-windows-msvc\\debug\\build\\curl-sys-14084afb46cf23bf\\out\\build" "/LIBPATH:C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC\\14.43.34808\\atlmfc\\lib\\x64" "/LIBPATH:C:\\a\\rustup\\rustup\\target\\x86_64-pc-windows-msvc\\debug\\build\\libz-sys-300aa0b5fa0cda5a\\out\\lib" "/LIBPATH:C:\\a\\rustup\\rustup\\target\\x86_64-pc-windows-msvc\\debug\\build\\libz-sys-300aa0b5fa0cda5a\\out\\lib" "/LIBPATH:C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC\\14.43.34808\\atlmfc\\lib\\x64" "/LIBPATH:C:\\a\\rustup\\rustup\\target\\x86_64-pc-windows-msvc\\debug\\build\\sys-info-46266b24ecd87c74\\out" "/LIBPATH:C:\\a\\rustup\\rustup\\target\\x86_64-pc-windows-msvc\\debug\\build\\aws-lc-sys-ad9dbc441a9fd8b1\\out\\build\\artifacts" "/LIBPATH:C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC\\14.43.34808\\atlmfc\\lib\\x64" "/LIBPATH:C:\\a\\rustup\\rustup\\target\\x86_64-pc-windows-msvc\\debug\\build\\lzma-sys-4d4d7812b8ac919b\\out" "/LIBPATH:C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC\\14.43.34808\\atlmfc\\lib\\x64" "/LIBPATH:C:\\a\\rustup\\rustup\\target\\x86_64-pc-windows-msvc\\debug\\build\\zstd-sys-6cf28c0571b5f89f\\out" "/OUT:C:\\a\\rustup\\rustup\\target\\x86_64-pc-windows-msvc\\debug\\deps\\rustup_init.exe" "/OPT:REF,NOICF" "/DEBUG" "/PDBALTPATH:%_PDB%" "/NATVIS:<sysroot>\\lib\\rustlib\\etc\\intrinsic.natvis" "/NATVIS:<sysroot>\\lib\\rustlib\\etc\\liballoc.natvis" "/NATVIS:<sysroot>\\lib\\rustlib\\etc\\libcore.natvis" "/NATVIS:<sysroot>\\lib\\rustlib\\etc\\libstd.natvis" "/NATVIS:C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\rustcw7vfWj\\rustup_init-0.natvis" "/NATVIS:C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\rustcw7vfWj\\rustup_init-1.natvis" "/DEPENDENTLOADFLAG:0x800" "/delayload:bcrypt.dll" "/delayload:api-ms-win-core-synch-l1-2-0.dll" "delayimp.lib" "/WX" "/STACK:0x200000"
  = note: some arguments are omitted. use `--verbose` to show all linker arguments
  = note: libaws_lc_sys-3fe107a3c1c4f7cf.rlib(mem.obj) : warning LNK4099: PDB '' was not found with 'libaws_lc_sys-3fe107a3c1c4f7cf.rlib(mem.obj)' or at ''; linking object as if no debug info␍
          LINK : error LNK1218: warning treated as error; no output file generated␍
          

error: could not compile `rustup` (bin "rustup-init") due to 1 previous error

https://github.com/rust-lang/rustup/actions/runs/15508652718/job/43666665868

However I don't see any new release from your side; could it be that the toolchain version has been silently updated?

Anyway, many thanks in advance for your investigation!

Relevant details

AWS-LC for Rust versions or commit:

[[package]]
name = "aws-lc-rs"
version = "1.13.1"

[[package]]
name = "aws-lc-sys"
version = "0.29.0"

System information: GitHub Actions Runner (Windows Server)

Current runner version: '2.325.0'
Operating System
  Microsoft Windows Server 2022
  10.0.20348
  Datacenter
Runner Image
  Image: windows-2022
  Version: 20250511.1.0
  Included Software: https://github.com/actions/runner-images/blob/win22/20250511.1/images/windows/Windows2022-Readme.md
  Image Release: https://github.com/actions/runner-images/releases/tag/win22%2F20250511.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions