Problem:
I use clang as C, C++ compiler, lllvm-ar as archiver and rust-lld as linker when installing cargo binaries. That allows crosslanguage LTO.
However, in such setup, the aws-lc-sys crate doesn't compile on Windows and breaks installation of cargo-audit. It had successfully installed before inclusion of this crate (I don't remember version though and I had already deleted old one).
Relevant details
LLVM and rustc versions:
> rustc --version --verbose
rustc 1.95.0 (59807616e 2026-04-14)
binary: rustc
commit-hash: 59807616e1fa2540724bfbac14d7976d7e4a3860
commit-date: 2026-04-14
host: x86_64-pc-windows-msvc
release: 1.95.0
LLVM version: 22.1.2
> clang --version
clang version 22.1.6 (https://github.com/llvm/llvm-project fc4aad7b5db3fff421df9a9637605b9ca5667881)
Target: x86_64-pc-windows-msvc
Thread model: posix
InstalledDir: C:\LLVM\bin
OS version:
Get-ComputerInfo | Select-Object WindowsProductName, OsVersion, OsBuildNumber
WindowsProductName OsVersion OsBuildNumber
------------------ --------- -------------
Windows 10 Enterprise 10.0.19041 19041
Command used to build using Clang + Rustc LTO;
$env:CC='clang'
$env:CXX='clang++'
$env:CFLAGS='-flto=thin -march=native'
$env:CXXFLAGS='-flto=thin -march=native'
$env:AR='llvm-lib'
$env:RUSTFLAGS=' -Ctarget-cpu=native -Ccodegen-units=1 '
$env:CARGO_PROFILE_RELEASE_LTO='thin'
$env:CARGO_TARGET_X86_64_PC_WINDOWS_MSVC_LINKER='rust-lld'
cargo install --locked --target=x86_64-pc-windows-msvc cargo-audit
Build log:
Error message (huge)
Updating crates.io index
Installing cargo-audit v0.22.1
Updating crates.io index
Updating crates.io index
Compiling proc-macro2 v1.0.106
Compiling unicode-ident v1.0.22
Compiling quote v1.0.44
Compiling memchr v2.7.6
Compiling windows-link v0.2.1
Compiling cfg-if v1.0.4
Compiling regex-syntax v0.8.9
Compiling windows_x86_64_msvc v0.52.6
Compiling smallvec v1.15.1
Compiling once_cell v1.21.3
Compiling bytes v1.11.1
Compiling thiserror v2.0.18
Compiling stable_deref_trait v1.2.1
Compiling crossbeam-utils v0.8.21
Compiling crc32fast v1.5.0
Compiling tinyvec_macros v0.1.1
Compiling gix-trace v0.1.17
Compiling fastrand v2.3.0
Compiling itoa v1.0.17
Compiling parking_lot_core v0.9.12
Compiling scopeguard v1.2.0
Compiling zlib-rs v0.5.5
Compiling typenum v1.19.0
Compiling equivalent v1.0.2
Compiling tinyvec v1.10.0
Compiling lock_api v0.4.14
Compiling allocator-api2 v0.2.21
Compiling version_check v0.9.5
Compiling foldhash v0.2.0
Compiling bitflags v2.10.0
Compiling byteorder v1.5.0
Compiling heapless v0.8.0
Compiling hash32 v0.3.1
Compiling windows_x86_64_msvc v0.53.1
Compiling cpufeatures v0.2.17
Compiling aho-corasick v1.1.4
Compiling jiff-tzdb v0.1.5
Compiling serde_core v1.0.228
Compiling winnow v0.7.14
Compiling windows-sys v0.61.2
Compiling getrandom v0.3.4
Compiling generic-array v0.14.7
Compiling jiff-tzdb-platform v0.1.3
Compiling unicode-normalization v0.1.25
Compiling hashbrown v0.16.1
Compiling pin-project-lite v0.2.16
Compiling shlex v1.3.0
Compiling find-msvc-tools v0.1.9
Compiling memmap2 v0.9.9
Compiling futures-core v0.3.31
Compiling fs_extra v1.3.0
Compiling dunce v1.0.5
Compiling gix-utils v0.3.1
Compiling serde v1.0.228
Compiling zeroize v1.8.2
Compiling futures-sink v0.3.31
Compiling windows-targets v0.52.6
Compiling windows-targets v0.53.5
Compiling tracing-core v0.1.36
Compiling windows-sys v0.52.0
Compiling litemap v0.8.1
Compiling windows-sys v0.60.2
Compiling jobserver v0.1.34
Compiling aws-lc-rs v1.15.4
Compiling percent-encoding v2.3.2
Compiling writeable v0.6.2
Compiling http v1.4.0
Compiling parking_lot v0.12.5
Compiling fnv v1.0.7
Compiling icu_properties_data v2.1.2
Compiling icu_normalizer_data v2.1.1
Compiling slab v0.4.12
Compiling cc v1.2.55
Compiling indexmap v2.13.0
Compiling adler2 v2.0.1
Compiling simd-adler32 v0.3.8
Compiling pin-utils v0.1.0
Compiling prodash v31.0.0
Compiling rustls-pki-types v1.14.0
Compiling rustls v0.23.36
Compiling crossbeam-channel v0.5.15
Compiling futures-io v0.3.31
Compiling faster-hex v0.10.0
Compiling regex-automata v0.4.14
Compiling miniz_oxide v0.8.9
Compiling syn v2.0.114
Compiling httparse v1.10.1
Compiling futures-task v0.3.31
Compiling untrusted v0.9.0
Compiling try-lock v0.2.5
Compiling unicode-bom v2.0.3
Compiling log v0.4.29
Compiling atomic-waker v1.1.2
Compiling tower-service v0.3.3
Compiling futures-util v0.3.31
Compiling subtle v2.6.1
Compiling http-body v1.0.1
Compiling libc v0.2.180
Compiling want v0.3.1
Compiling futures-channel v0.3.31
Compiling compression-core v0.4.31
Compiling flate2 v1.1.9
Compiling block-buffer v0.10.4
Compiling crypto-common v0.1.7
Compiling utf8_iter v1.0.4
Compiling socket2 v0.6.2
Compiling shell-words v1.1.1
Compiling digest v0.10.7
Compiling static_assertions v1.1.0
Compiling form_urlencoded v1.2.2
Compiling cmake v0.1.57
Compiling sync_wrapper v1.0.2
Compiling kstring v2.0.2
Compiling encoding_rs v0.8.35
Compiling base64 v0.22.1
Compiling sha1 v0.10.6
Compiling ipnet v2.11.0
Compiling tower-layer v0.3.3
Compiling http-body-util v0.1.3
Compiling sha1-checked v0.10.0
Compiling compression-codecs v0.4.36
Compiling iri-string v0.7.10
Compiling zmij v1.0.19
Compiling rustversion v1.0.22
Compiling windows-sys v0.59.0
Compiling winapi v0.3.9
Compiling serde_json v1.0.149
Compiling mime v0.3.17
Compiling crossbeam-epoch v0.9.18
Compiling filetime v0.2.27
Compiling utf8parse v0.2.2
Compiling anstyle v1.0.13
Compiling mio v1.1.1
Compiling arrayvec v0.7.6
Compiling once_cell_polyfill v1.70.2
Compiling rayon-core v1.13.0
Compiling autocfg v1.5.0
Compiling anstyle-wincon v3.0.11
Compiling anstyle-parse v0.2.7
Compiling crossbeam-deque v0.8.6
Compiling uluru v3.1.0
Compiling aws-lc-sys v0.37.0
Compiling anstyle-query v1.1.5
Compiling toml_parser v1.0.6+spec-1.1.0
Compiling eyre v0.6.12
Compiling colorchoice v1.0.4
Compiling toml_writer v1.0.6+spec-1.1.0
Compiling semver v1.0.27
Compiling serde_spanned v1.0.4
Compiling toml_datetime v0.7.5+spec-1.1.0
Compiling owo-colors v4.2.3
Compiling is_terminal_polyfill v1.70.2
Compiling winapi-util v0.1.11
Compiling jiff v0.2.18
Compiling tempfile v3.24.0
Compiling tokio v1.49.0
Compiling fs-err v3.2.2
Compiling same-file v1.0.6
Compiling camino v1.2.2
Compiling clru v0.6.2
Compiling walkdir v2.5.0
Compiling foldhash v0.1.5
Compiling arc-swap v1.8.1
Compiling toml v0.9.11+spec-1.1.0
Compiling hashbrown v0.15.5
Compiling anstream v0.6.21
Compiling wasmparser v0.207.0
Compiling either v1.15.0
Compiling strsim v0.11.1
Compiling fixedbitset v0.5.7
Compiling binfarce v0.2.1
Compiling heck v0.5.0
Compiling powerfmt v0.2.0
Compiling rustc-demangle v0.1.27
Compiling topological-sort v0.2.2
Compiling clap_lex v0.7.7
Compiling lazy_static v1.5.0
Compiling indenter v0.3.4
Compiling home v0.5.11
Compiling nu-ansi-term v0.50.3
Compiling backtrace v0.3.76
Compiling sharded-slab v0.1.7
Compiling io-close v0.3.7
Compiling clap_builder v4.5.57
Compiling petgraph v0.8.3
Compiling rayon v1.11.0
Compiling deranged v0.5.5
Compiling tracing-log v0.2.0
Compiling toml-span v0.6.0
Compiling thread_local v1.1.9
Compiling num-conv v0.1.0
Compiling twox-hash v2.1.2
Compiling time-core v0.1.7
Compiling bstr v1.12.1
Compiling regex v1.12.3
Compiling matchers v0.2.0
Compiling ident_case v1.0.1
Compiling rustc-stable-hash v0.1.2
Compiling termcolor v1.4.1
Compiling canonical-path v2.0.2
Compiling wait-timeout v0.2.1
Compiling display-error-chain v0.2.2
Compiling synstructure v0.13.2
Compiling quitters v0.1.0
Compiling color-eyre v0.6.5
Compiling gix-validate v0.11.0
Compiling gix-error v0.0.0
Compiling auditable-extract v0.3.5
Compiling thiserror-impl v2.0.18
Compiling zerofrom-derive v0.1.6
Compiling yoke-derive v0.8.1
Compiling zerovec-derive v0.11.2
Compiling displaydoc v0.2.5
Compiling serde_derive v1.0.228
Compiling gix-chunk v0.5.0
Compiling tracing-attributes v0.1.31
Compiling maybe-async v0.2.10
Compiling clap_derive v4.5.55
Compiling time v0.3.45
Compiling abscissa_derive v0.9.0
warning: aws-lc-sys@0.37.0: Environment Variable found 'CFLAGS': '-flto=thin -march=native'
warning: aws-lc-sys@0.37.0: Environment Variable found 'CARGO_ENCODED_RUSTFLAGS': '-Ctarget-cpu=native▼-Ccodegen-units=1'
warning: aws-lc-sys@0.37.0: Emitting configuration: cargo:rustc-cfg=universal
warning: aws-lc-sys@0.37.0: Building with: CC
warning: aws-lc-sys@0.37.0: Symbol Prefix: Some("aws_lc_0_37_0")
warning: aws-lc-sys@0.37.0: Target platform: 'x86_64-pc-windows-msvc'
warning: aws-lc-sys@0.37.0: Setting CFLAGS_x86_64_pc_windows_msvc: -flto=thin -march=native
warning: aws-lc-sys@0.37.0: Compilation of 'c11.c' succeeded - Ok(["C:\\Users\\WDAGUtilityAccount\\AppData\\Local\\Temp\\cargo-installVkwQqr\\x86_64-pc-windows-msvc\\release\\build\\aws-lc-sys-027252bcf838056f\\out\\out-c11\\e1bacabfea35bee3-c11.o"]).
warning: aws-lc-sys@0.37.0: Environment Variable found 'CC': 'clang'
warning: aws-lc-sys@0.37.0: Setting CC_x86_64_pc_windows_msvc: clang
warning: aws-lc-sys@0.37.0: Environment Variable found 'CXX': 'clang++'
warning: aws-lc-sys@0.37.0: Setting CXX_x86_64_pc_windows_msvc: clang++
warning: aws-lc-sys@0.37.0: Using flag: -ffile-prefix-map=C:\Users\WDAGUtilityAccount\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aws-lc-sys-0.37.0=
warning: aws-lc-sys@0.37.0: Compilation of 'stdalign_check.c' succeeded - Ok(["C:\\Users\\WDAGUtilityAccount\\AppData\\Local\\Temp\\cargo-installVkwQqr\\x86_64-pc-windows-msvc\\release\\build\\aws-lc-sys-027252bcf838056f\\out\\out-stdalign_check\\e1bacabfea35bee3-stdalign_check.o"]).
warning: aws-lc-sys@0.37.0: Compilation of 'builtin_swap_check.c' succeeded - Ok(["C:\\Users\\WDAGUtilityAccount\\AppData\\Local\\Temp\\cargo-installVkwQqr\\x86_64-pc-windows-msvc\\release\\build\\aws-lc-sys-027252bcf838056f\\out\\out-builtin_swap_check\\e1bacabfea35bee3-builtin_swap_check.o"]).
error: failed to run custom build command for `aws-lc-sys v0.37.0`
Caused by:
process didn't exit successfully: `C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\release\build\aws-lc-sys-273d57a1223b91fc\build-script-main` (exit code: 101)
--- stdout
cargo:rerun-if-env-changed=AWS_LC_SYS_NO_PREFIX_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_NO_PREFIX
cargo:rerun-if-env-changed=AWS_LC_SYS_PREGENERATING_BINDINGS_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_PREGENERATING_BINDINGS
cargo:rerun-if-env-changed=AWS_LC_SYS_EXTERNAL_BINDGEN_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_EXTERNAL_BINDGEN
cargo:rerun-if-env-changed=AWS_LC_SYS_NO_ASM_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_NO_ASM
cargo:rerun-if-env-changed=AWS_LC_SYS_CFLAGS_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_CFLAGS
cargo:rerun-if-env-changed=CFLAGS_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=CFLAGS
cargo:warning=Environment Variable found 'CFLAGS': '-flto=thin -march=native'
cargo:rerun-if-env-changed=AWS_LC_SYS_PREBUILT_NASM_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_PREBUILT_NASM
cargo:rerun-if-env-changed=AWS_LC_SYS_C_STD_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_C_STD
cargo:rerun-if-env-changed=AWS_LC_SYS_CMAKE_BUILDER_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_CMAKE_BUILDER
cargo:rerun-if-env-changed=AWS_LC_SYS_NO_PREGENERATED_SRC_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_NO_PREGENERATED_SRC
cargo:rerun-if-env-changed=AWS_LC_SYS_EFFECTIVE_TARGET_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_EFFECTIVE_TARGET
cargo:rerun-if-env-changed=AWS_LC_SYS_NO_JITTER_ENTROPY_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_NO_JITTER_ENTROPY
cargo:rerun-if-env-changed=AWS_LC_SYS_NO_U1_BINDINGS_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_NO_U1_BINDINGS
cargo:rerun-if-env-changed=CARGO_ENCODED_RUSTFLAGS
cargo:warning=Environment Variable found 'CARGO_ENCODED_RUSTFLAGS': '-Ctarget-cpu=native▼-Ccodegen-units=1'
cargo:warning=Emitting configuration: cargo:rustc-cfg=universal
cargo:rustc-cfg=universal
cargo:rerun-if-env-changed=AWS_LC_SYS_STATIC_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_STATIC
cargo:rerun-if-env-changed=CARGO_FEATURE_SSL
cargo:warning=Building with: CC
cargo:warning=Symbol Prefix: Some("aws_lc_0_37_0")
cargo:rerun-if-env-changed=CARGO_FEATURE_SSL
cargo:warning=Target platform: 'x86_64-pc-windows-msvc'
cargo:root=C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\x86_64-pc-windows-msvc\release\build\aws-lc-sys-027252bcf838056f\out
cargo:warning=Setting CFLAGS_x86_64_pc_windows_msvc: -flto=thin -march=native
OPT_LEVEL = Some(3)
OUT_DIR = Some(C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\x86_64-pc-windows-msvc\release\build\aws-lc-sys-027252bcf838056f\out)
TARGET = Some(x86_64-pc-windows-msvc)
CARGO_ENCODED_RUSTFLAGS = Some(-Ctarget-cpu=native▼-Ccodegen-units=1)
cargo:rerun-if-env-changed=VCINSTALLDIR
VCINSTALLDIR = None
cargo:rerun-if-env-changed=VSTEL_MSBuildProjectFullPath
VSTEL_MSBuildProjectFullPath = None
cargo:rerun-if-env-changed=VCToolsVersion
VCToolsVersion = None
cargo:rerun-if-env-changed=VSCMD_ARG_VCVARS_SPECTRE
VSCMD_ARG_VCVARS_SPECTRE = None
cargo:rerun-if-env-changed=WindowsSdkDir
WindowsSdkDir = None
cargo:rerun-if-env-changed=WindowsSDKVersion
WindowsSDKVersion = None
cargo:rerun-if-env-changed=LIB
LIB = None
PATH = Some(C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\release;C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\release\deps;C:\Users\WDAGUtilityAccount\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\x86_64-pc-windows-msvc\lib;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\LLVM\bin;C:\Users\WDAGUtilityAccount\.cargo\bin;C:\Users\WDAGUtilityAccount\AppData\Local\Microsoft\WindowsApps;;C:\Users\WDAGUtilityAccount\.rustup\toolchains\stable-x86_64-pc-windows-msvc\bin)
cargo:rerun-if-env-changed=INCLUDE
INCLUDE = None
HOST = Some(x86_64-pc-windows-msvc)
cargo:rerun-if-env-changed=CC_x86_64-pc-windows-msvc
CC_x86_64-pc-windows-msvc = None
cargo:rerun-if-env-changed=CC_x86_64_pc_windows_msvc
CC_x86_64_pc_windows_msvc = None
cargo:rerun-if-env-changed=HOST_CC
HOST_CC = None
cargo:rerun-if-env-changed=CC
CC = Some(clang)
cargo:rerun-if-env-changed=CC_KNOWN_WRAPPER_CUSTOM
CC_KNOWN_WRAPPER_CUSTOM = None
RUSTC_WRAPPER = None
cargo:rerun-if-env-changed=CC_ENABLE_DEBUG_OUTPUT
cargo:rerun-if-env-changed=CRATE_CC_NO_DEFAULTS
CRATE_CC_NO_DEFAULTS = None
DEBUG = Some(false)
cargo:rerun-if-env-changed=CFLAGS
CFLAGS = Some(-flto=thin -march=native)
cargo:rerun-if-env-changed=CC_SHELL_ESCAPED_FLAGS
CC_SHELL_ESCAPED_FLAGS = None
cargo:rerun-if-env-changed=HOST_CFLAGS
HOST_CFLAGS = None
cargo:rerun-if-env-changed=CFLAGS_x86_64_pc_windows_msvc
CFLAGS_x86_64_pc_windows_msvc = Some(-flto=thin -march=native)
cargo:rerun-if-env-changed=CFLAGS_x86_64-pc-windows-msvc
CFLAGS_x86_64-pc-windows-msvc = None
OPT_LEVEL = Some(3)
TARGET = Some(x86_64-pc-windows-msvc)
CARGO_ENCODED_RUSTFLAGS = Some(-Ctarget-cpu=native▼-Ccodegen-units=1)
cargo:rerun-if-env-changed=VCINSTALLDIR
VCINSTALLDIR = None
cargo:rerun-if-env-changed=VSTEL_MSBuildProjectFullPath
VSTEL_MSBuildProjectFullPath = None
cargo:rerun-if-env-changed=VCToolsVersion
VCToolsVersion = None
cargo:rerun-if-env-changed=VSCMD_ARG_VCVARS_SPECTRE
VSCMD_ARG_VCVARS_SPECTRE = None
cargo:rerun-if-env-changed=WindowsSdkDir
WindowsSdkDir = None
cargo:rerun-if-env-changed=WindowsSDKVersion
WindowsSDKVersion = None
cargo:rerun-if-env-changed=LIB
LIB = None
PATH = Some(C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\release;C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\release\deps;C:\Users\WDAGUtilityAccount\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\x86_64-pc-windows-msvc\lib;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\LLVM\bin;C:\Users\WDAGUtilityAccount\.cargo\bin;C:\Users\WDAGUtilityAccount\AppData\Local\Microsoft\WindowsApps;;C:\Users\WDAGUtilityAccount\.rustup\toolchains\stable-x86_64-pc-windows-msvc\bin)
cargo:rerun-if-env-changed=INCLUDE
INCLUDE = None
HOST = Some(x86_64-pc-windows-msvc)
cargo:rerun-if-env-changed=CC_x86_64-pc-windows-msvc
CC_x86_64-pc-windows-msvc = None
cargo:rerun-if-env-changed=CC_x86_64_pc_windows_msvc
CC_x86_64_pc_windows_msvc = None
cargo:rerun-if-env-changed=HOST_CC
HOST_CC = None
cargo:rerun-if-env-changed=CC
CC = Some(clang)
cargo:rerun-if-env-changed=CC_KNOWN_WRAPPER_CUSTOM
CC_KNOWN_WRAPPER_CUSTOM = None
RUSTC_WRAPPER = None
cargo:rerun-if-env-changed=CC_ENABLE_DEBUG_OUTPUT
cargo:rerun-if-env-changed=CRATE_CC_NO_DEFAULTS
CRATE_CC_NO_DEFAULTS = None
DEBUG = Some(false)
cargo:rerun-if-env-changed=CFLAGS
CFLAGS = Some(-flto=thin -march=native)
cargo:rerun-if-env-changed=CC_SHELL_ESCAPED_FLAGS
CC_SHELL_ESCAPED_FLAGS = None
cargo:rerun-if-env-changed=HOST_CFLAGS
HOST_CFLAGS = None
cargo:rerun-if-env-changed=CFLAGS_x86_64_pc_windows_msvc
CFLAGS_x86_64_pc_windows_msvc = Some(-flto=thin -march=native)
cargo:rerun-if-env-changed=CFLAGS_x86_64-pc-windows-msvc
CFLAGS_x86_64-pc-windows-msvc = None
cargo:warning=Compilation of 'c11.c' succeeded - Ok(["C:\\Users\\WDAGUtilityAccount\\AppData\\Local\\Temp\\cargo-installVkwQqr\\x86_64-pc-windows-msvc\\release\\build\\aws-lc-sys-027252bcf838056f\\out\\out-c11\\e1bacabfea35bee3-c11.o"]).
cargo:rerun-if-env-changed=AWS_LC_SYS_CC_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_CC
cargo:rerun-if-env-changed=CC_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=CC
cargo:warning=Environment Variable found 'CC': 'clang'
cargo:warning=Setting CC_x86_64_pc_windows_msvc: clang
cargo:rerun-if-env-changed=AWS_LC_SYS_CXX_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=AWS_LC_SYS_CXX
cargo:rerun-if-env-changed=CXX_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=CXX
cargo:warning=Environment Variable found 'CXX': 'clang++'
cargo:warning=Setting CXX_x86_64_pc_windows_msvc: clang++
OUT_DIR = Some(C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\x86_64-pc-windows-msvc\release\build\aws-lc-sys-027252bcf838056f\out)
cargo:rerun-if-env-changed=CC_ENABLE_DEBUG_OUTPUT
cargo:rerun-if-env-changed=CRATE_CC_NO_DEFAULTS
CRATE_CC_NO_DEFAULTS = None
TARGET = Some(x86_64-pc-windows-msvc)
HOST = Some(x86_64-pc-windows-msvc)
cargo:rerun-if-env-changed=CFLAGS
CFLAGS = Some(-flto=thin -march=native)
cargo:rerun-if-env-changed=CC_SHELL_ESCAPED_FLAGS
CC_SHELL_ESCAPED_FLAGS = None
cargo:rerun-if-env-changed=HOST_CFLAGS
HOST_CFLAGS = None
cargo:rerun-if-env-changed=CFLAGS_x86_64_pc_windows_msvc
CFLAGS_x86_64_pc_windows_msvc = Some(-flto=thin -march=native)
cargo:rerun-if-env-changed=CFLAGS_x86_64-pc-windows-msvc
CFLAGS_x86_64-pc-windows-msvc = None
cargo:warning=Using flag: -ffile-prefix-map=C:\Users\WDAGUtilityAccount\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aws-lc-sys-0.37.0=
OPT_LEVEL = Some(3)
TARGET = Some(x86_64-pc-windows-msvc)
CARGO_ENCODED_RUSTFLAGS = Some(-Ctarget-cpu=native▼-Ccodegen-units=1)
cargo:rerun-if-env-changed=VCINSTALLDIR
VCINSTALLDIR = None
cargo:rerun-if-env-changed=VSTEL_MSBuildProjectFullPath
VSTEL_MSBuildProjectFullPath = None
cargo:rerun-if-env-changed=VCToolsVersion
VCToolsVersion = None
cargo:rerun-if-env-changed=VSCMD_ARG_VCVARS_SPECTRE
VSCMD_ARG_VCVARS_SPECTRE = None
cargo:rerun-if-env-changed=WindowsSdkDir
WindowsSdkDir = None
cargo:rerun-if-env-changed=WindowsSDKVersion
WindowsSDKVersion = None
cargo:rerun-if-env-changed=LIB
LIB = None
PATH = Some(C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\release;C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\release\deps;C:\Users\WDAGUtilityAccount\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\x86_64-pc-windows-msvc\lib;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\LLVM\bin;C:\Users\WDAGUtilityAccount\.cargo\bin;C:\Users\WDAGUtilityAccount\AppData\Local\Microsoft\WindowsApps;;C:\Users\WDAGUtilityAccount\.rustup\toolchains\stable-x86_64-pc-windows-msvc\bin)
cargo:rerun-if-env-changed=INCLUDE
INCLUDE = None
HOST = Some(x86_64-pc-windows-msvc)
cargo:rerun-if-env-changed=CC_x86_64-pc-windows-msvc
CC_x86_64-pc-windows-msvc = None
cargo:rerun-if-env-changed=CC_x86_64_pc_windows_msvc
CC_x86_64_pc_windows_msvc = Some(clang)
cargo:rerun-if-env-changed=CC_KNOWN_WRAPPER_CUSTOM
CC_KNOWN_WRAPPER_CUSTOM = None
RUSTC_WRAPPER = None
cargo:rerun-if-env-changed=CC_ENABLE_DEBUG_OUTPUT
cargo:rerun-if-env-changed=CRATE_CC_NO_DEFAULTS
CRATE_CC_NO_DEFAULTS = None
DEBUG = Some(false)
cargo:rerun-if-env-changed=CFLAGS
CFLAGS = Some(-flto=thin -march=native)
cargo:rerun-if-env-changed=CC_SHELL_ESCAPED_FLAGS
CC_SHELL_ESCAPED_FLAGS = None
cargo:rerun-if-env-changed=HOST_CFLAGS
HOST_CFLAGS = None
cargo:rerun-if-env-changed=CFLAGS_x86_64_pc_windows_msvc
CFLAGS_x86_64_pc_windows_msvc = Some(-flto=thin -march=native)
cargo:rerun-if-env-changed=CFLAGS_x86_64-pc-windows-msvc
CFLAGS_x86_64-pc-windows-msvc = None
cargo:warning=Compilation of 'stdalign_check.c' succeeded - Ok(["C:\\Users\\WDAGUtilityAccount\\AppData\\Local\\Temp\\cargo-installVkwQqr\\x86_64-pc-windows-msvc\\release\\build\\aws-lc-sys-027252bcf838056f\\out\\out-stdalign_check\\e1bacabfea35bee3-stdalign_check.o"]).
OPT_LEVEL = Some(3)
TARGET = Some(x86_64-pc-windows-msvc)
CARGO_ENCODED_RUSTFLAGS = Some(-Ctarget-cpu=native▼-Ccodegen-units=1)
cargo:rerun-if-env-changed=VCINSTALLDIR
VCINSTALLDIR = None
cargo:rerun-if-env-changed=VSTEL_MSBuildProjectFullPath
VSTEL_MSBuildProjectFullPath = None
cargo:rerun-if-env-changed=VCToolsVersion
VCToolsVersion = None
cargo:rerun-if-env-changed=VSCMD_ARG_VCVARS_SPECTRE
VSCMD_ARG_VCVARS_SPECTRE = None
cargo:rerun-if-env-changed=WindowsSdkDir
WindowsSdkDir = None
cargo:rerun-if-env-changed=WindowsSDKVersion
WindowsSDKVersion = None
cargo:rerun-if-env-changed=LIB
LIB = None
PATH = Some(C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\release;C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\release\deps;C:\Users\WDAGUtilityAccount\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\x86_64-pc-windows-msvc\lib;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\LLVM\bin;C:\Users\WDAGUtilityAccount\.cargo\bin;C:\Users\WDAGUtilityAccount\AppData\Local\Microsoft\WindowsApps;;C:\Users\WDAGUtilityAccount\.rustup\toolchains\stable-x86_64-pc-windows-msvc\bin)
cargo:rerun-if-env-changed=INCLUDE
INCLUDE = None
HOST = Some(x86_64-pc-windows-msvc)
cargo:rerun-if-env-changed=CC_x86_64-pc-windows-msvc
CC_x86_64-pc-windows-msvc = None
cargo:rerun-if-env-changed=CC_x86_64_pc_windows_msvc
CC_x86_64_pc_windows_msvc = Some(clang)
cargo:rerun-if-env-changed=CC_KNOWN_WRAPPER_CUSTOM
CC_KNOWN_WRAPPER_CUSTOM = None
RUSTC_WRAPPER = None
cargo:rerun-if-env-changed=CC_ENABLE_DEBUG_OUTPUT
cargo:rerun-if-env-changed=CRATE_CC_NO_DEFAULTS
CRATE_CC_NO_DEFAULTS = None
DEBUG = Some(false)
cargo:rerun-if-env-changed=CFLAGS
CFLAGS = Some(-flto=thin -march=native)
cargo:rerun-if-env-changed=CC_SHELL_ESCAPED_FLAGS
CC_SHELL_ESCAPED_FLAGS = None
cargo:rerun-if-env-changed=HOST_CFLAGS
HOST_CFLAGS = None
cargo:rerun-if-env-changed=CFLAGS_x86_64_pc_windows_msvc
CFLAGS_x86_64_pc_windows_msvc = Some(-flto=thin -march=native)
cargo:rerun-if-env-changed=CFLAGS_x86_64-pc-windows-msvc
CFLAGS_x86_64-pc-windows-msvc = None
cargo:warning=Compilation of 'builtin_swap_check.c' succeeded - Ok(["C:\\Users\\WDAGUtilityAccount\\AppData\\Local\\Temp\\cargo-installVkwQqr\\x86_64-pc-windows-msvc\\release\\build\\aws-lc-sys-027252bcf838056f\\out\\out-builtin_swap_check\\e1bacabfea35bee3-builtin_swap_check.o"]).
OPT_LEVEL = Some(3)
OUT_DIR = Some(C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\x86_64-pc-windows-msvc\release\build\aws-lc-sys-027252bcf838056f\out)
TARGET = Some(x86_64-pc-windows-msvc)
CARGO_ENCODED_RUSTFLAGS = Some(-Ctarget-cpu=native▼-Ccodegen-units=1)
cargo:rerun-if-env-changed=VCINSTALLDIR
VCINSTALLDIR = None
cargo:rerun-if-env-changed=VSTEL_MSBuildProjectFullPath
VSTEL_MSBuildProjectFullPath = None
cargo:rerun-if-env-changed=VCToolsVersion
VCToolsVersion = None
cargo:rerun-if-env-changed=VSCMD_ARG_VCVARS_SPECTRE
VSCMD_ARG_VCVARS_SPECTRE = None
cargo:rerun-if-env-changed=WindowsSdkDir
WindowsSdkDir = None
cargo:rerun-if-env-changed=WindowsSDKVersion
WindowsSDKVersion = None
cargo:rerun-if-env-changed=LIB
LIB = None
PATH = Some(C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\release;C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr\release\deps;C:\Users\WDAGUtilityAccount\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\x86_64-pc-windows-msvc\lib;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\LLVM\bin;C:\Users\WDAGUtilityAccount\.cargo\bin;C:\Users\WDAGUtilityAccount\AppData\Local\Microsoft\WindowsApps;;C:\Users\WDAGUtilityAccount\.rustup\toolchains\stable-x86_64-pc-windows-msvc\bin)
cargo:rerun-if-env-changed=INCLUDE
INCLUDE = None
HOST = Some(x86_64-pc-windows-msvc)
cargo:rerun-if-env-changed=CC_x86_64-pc-windows-msvc
CC_x86_64-pc-windows-msvc = None
cargo:rerun-if-env-changed=CC_x86_64_pc_windows_msvc
CC_x86_64_pc_windows_msvc = Some(clang)
cargo:rerun-if-env-changed=CC_KNOWN_WRAPPER_CUSTOM
CC_KNOWN_WRAPPER_CUSTOM = None
RUSTC_WRAPPER = None
cargo:rerun-if-env-changed=CC_ENABLE_DEBUG_OUTPUT
cargo:rerun-if-env-changed=CRATE_CC_NO_DEFAULTS
CRATE_CC_NO_DEFAULTS = None
DEBUG = Some(false)
cargo:rerun-if-env-changed=CFLAGS
CFLAGS = Some(-flto=thin -march=native)
cargo:rerun-if-env-changed=CC_SHELL_ESCAPED_FLAGS
CC_SHELL_ESCAPED_FLAGS = None
cargo:rerun-if-env-changed=HOST_CFLAGS
HOST_CFLAGS = None
cargo:rerun-if-env-changed=CFLAGS_x86_64_pc_windows_msvc
CFLAGS_x86_64_pc_windows_msvc = Some(-flto=thin -march=native)
cargo:rerun-if-env-changed=CFLAGS_x86_64-pc-windows-msvc
CFLAGS_x86_64-pc-windows-msvc = None
--- stderr
thread 'main' (6048) panicked at C:\Users\WDAGUtilityAccount\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aws-lc-sys-0.37.0\builder\cc_builder.rs:692:9:
COMPILER: clangARGS: ["-O3", "-ffunction-sections", "-fdata-sections", "-m64", "--target=x86_64-pc-windows-msvc", "-flto=thin", "-march=native", "-flto=thin", "-march=native", "C:\\Users\\WDAGUtilityAccount\\.cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\aws-lc-sys-0.37.0\\aws-lc\\tests\\compiler_features_tests\\memcmp_invalid_stripped_check.c", "-Wno-unused-parameter", "-o", "C:\\Users\\WDAGUtilityAccount\\AppData\\Local\\Temp\\cargo-installVkwQqr\\x86_64-pc-windows-msvc\\release\\build\\aws-lc-sys-027252bcf838056f\\out\\memcmp_invalid_stripped_check"]EXECUTED: trueERROR: clang: error: LTO requires -fuse-ld=lld
OUTPUT: Failed to compile memcmp_invalid_stripped_check
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
error: failed to compile `cargo-audit v0.22.1`, intermediate artifacts can be found at `C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cargo-installVkwQqr`.
To reuse those artifacts with a future compilation, set the environment variable `CARGO_BUILD_BUILD_DIR` to that path.
Problem:
I use clang as C, C++ compiler, lllvm-ar as archiver and rust-lld as linker when installing cargo binaries. That allows crosslanguage LTO.
However, in such setup, the
aws-lc-syscrate doesn't compile on Windows and breaks installation of cargo-audit. It had successfully installed before inclusion of this crate (I don't remember version though and I had already deleted old one).Relevant details
LLVM and rustc versions:
OS version:
Command used to build using Clang + Rustc LTO;
Build log:
Error message (huge)