Skip to content

Update Compile-time Requirements to add info about clang-cl.exe#1693

Merged
NobodyXu merged 3 commits intorust-lang:mainfrom
dennisameling:clang-cl-compile-time-requirement
Mar 26, 2026
Merged

Update Compile-time Requirements to add info about clang-cl.exe#1693
NobodyXu merged 3 commits intorust-lang:mainfrom
dennisameling:clang-cl-compile-time-requirement

Conversation

@dennisameling
Copy link
Copy Markdown
Contributor

In #1516, I added prefer_clang_cl_over_msvc. I wanted to test the scenario where Visual Studio is installed, but not the Clang build tools, to see how things would behave. The result is this expected error:

cargo:warning=Compiler family detection failed due to error: ToolNotFound: failed to find tool "clang-cl.exe": program not found (see https://docs.rs/cc/latest/cc/#compile-time-requirements for help) 

  --- stderr
  running "perl" "C:/repos/ring/crypto/chacha/asm/chacha-armv8.pl" "win64" "C:/repos/ring/target/aarch64-pc-windows-msvc/debug/build/ring-a8b6d2989661e2f1/out/chacha-armv8-win64.S"
  running "perl" "C:/repos/ring/crypto/cipher/asm/chacha20_poly1305_armv8.pl" "win64" "C:/repos/ring/target/aarch64-pc-windows-msvc/debug/build/ring-a8b6d2989661e2f1/out/chacha20_poly1305_armv8-win64.S"
  running "perl" "C:/repos/ring/crypto/fipsmodule/aes/asm/aesv8-armx.pl" "win64" "C:/repos/ring/target/aarch64-pc-windows-msvc/debug/build/ring-a8b6d2989661e2f1/out/aesv8-armx-win64.S"
  running "perl" "C:/repos/ring/crypto/fipsmodule/aes/asm/aesv8-gcm-armv8.pl" "win64" "C:/repos/ring/target/aarch64-pc-windows-msvc/debug/build/ring-a8b6d2989661e2f1/out/aesv8-gcm-armv8-win64.S"        
  running "perl" "C:/repos/ring/crypto/fipsmodule/aes/asm/ghash-neon-armv8.pl" "win64" "C:/repos/ring/target/aarch64-pc-windows-msvc/debug/build/ring-a8b6d2989661e2f1/out/ghash-neon-armv8-win64.S"      
  running "perl" "C:/repos/ring/crypto/fipsmodule/aes/asm/ghashv8-armx.pl" "win64" "C:/repos/ring/target/aarch64-pc-windows-msvc/debug/build/ring-a8b6d2989661e2f1/out/ghashv8-armx-win64.S"
  running "perl" "C:/repos/ring/crypto/fipsmodule/aes/asm/vpaes-armv8.pl" "win64" "C:/repos/ring/target/aarch64-pc-windows-msvc/debug/build/ring-a8b6d2989661e2f1/out/vpaes-armv8-win64.S"
  running "perl" "C:/repos/ring/crypto/fipsmodule/bn/asm/armv8-mont.pl" "win64" "C:/repos/ring/target/aarch64-pc-windows-msvc/debug/build/ring-a8b6d2989661e2f1/out/armv8-mont-win64.S"
  running "perl" "C:/repos/ring/crypto/fipsmodule/ec/asm/p256-armv8-asm.pl" "win64" "C:/repos/ring/target/aarch64-pc-windows-msvc/debug/build/ring-a8b6d2989661e2f1/out/p256-armv8-asm-win64.S"
  running "perl" "C:/repos/ring/crypto/fipsmodule/sha/asm/sha512-armv8.pl" "win64" "C:/repos/ring/target/aarch64-pc-windows-msvc/debug/build/ring-a8b6d2989661e2f1/out/sha512-armv8-win64.S"
  running "perl" "C:/repos/ring/crypto/fipsmodule/sha/asm/sha512-armv8.pl" "win64" "C:/repos/ring/target/aarch64-pc-windows-msvc/debug/build/ring-a8b6d2989661e2f1/out/sha256-armv8-win64.S"


  error occurred in cc-rs: failed to find tool "clang-cl.exe": program not found (see https://docs.rs/cc/latest/cc/#compile-time-requirements for help)

While the docs at https://docs.rs/cc/latest/cc/#compile-time-requirements are pretty clear already, I think it can add some value if we'd add some specific instructions for the case where clang-cl.exe isn't found.

My intention is to add a "sub-bullet" under the main MSVC bullet, but I'm not sure how this will render. Let me know if you think I should word or structure things differently.

Copy link
Copy Markdown
Contributor

@NobodyXu NobodyXu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

Comment thread src/lib.rs Outdated
Co-authored-by: Jiahao XU <[email protected]>
Comment thread src/lib.rs Outdated
Copy link
Copy Markdown
Contributor

@NobodyXu NobodyXu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you!

I've done another minor update as the line is to long

@NobodyXu NobodyXu enabled auto-merge (squash) March 26, 2026 14:27
@NobodyXu NobodyXu merged commit 8b8d71f into rust-lang:main Mar 26, 2026
79 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants