swiftlang / swift-installer-scripts

Apache License 2.0
67 stars 34 forks source link

Cannot install 2 versions of swift on windows #302

Open award999 opened 2 months ago

award999 commented 2 months ago

See some weird behaviour when installing 2 versions of swift on Windows

Steps To Reproduce: While trying to verify the vscode-swift extension, I had installed Swift 5.10 using exe downloaded from https://www.swift.org/download/

Swift —version worked fine: C:\Users\award999\AppData\Local\Programs\Swift\Toolchains\5.10.0+Asserts\usr\bin\swift --version Swift version 5.10 (swift-5.10-RELEASE) Target: x86_64-unknown-windows-msvc

Now installed latest 6.0 snapshot

Now none of the 5.10 command line tools work, i.e. no output and seemingly just exit when spawned, but 6.0 is fine: C:\Users\award999\AppData\Local\Programs\Swift\Toolchains\6.0.0+Asserts\usr\bin\swift --version Swift version 6.0-dev (LLVM e878388283d7b73, Swift eb92e6e50035d21) Target: x86_64-unknown-windows-msvc

On uninstall of swift 6.0, 5.10 starts working again. Not sure how common it is to have 2 toolchains but seems odd.

stevapple commented 2 months ago

It's possible to install multiple toolchains, but you need to take care of your %Path% to prefer the exact runtime version for the toolchain you want to use. This is also the case for %SDKROOT% if you actually want to compile something instead of just calling the compiler.