Minimum version of packages used by Swift on Linux


(Trevör Anne Denise) #1

From what I understand the only thing you need to do to run Swift on Linux is to download the toolchain and install clang, but I see that the version of clang from the system I'm running on is :

Ubuntu clang version 3.4-1ubuntu3 (tags/RELEASE_34/final) (based on LLVM 3.4)

Is that sufficient? I am able to use the REPL, but is there the risk that other features might not work ?

I was also surprised to see that
swift --version
is

Swift version 4.1.3 (swift-4.1.3-RELEASE)
Target: x86_64-unknown-linux-gnu

And yet, the welcome message of the system is:

Ubuntu 14.04.5 LTS (GNU/Linux 3.13.0-105-generic x86_64)

Should I be worried about Swift not correctly detecting the OS?

This is not a system I administrate, therefore I cannot manually update clang/llvm if that's needed, is there a way to install it to a different directory and specify it to Swift?

Thank you


(Jeremy David Giesbrecht) #2

Theoretically that risk exists, but I ignored that warning for over a year without noticing any side effects. If getting a newer version of clang is too difficult, don’t fight with it too much until/if something you want to do actually doesn’t work. The message about it is a disclaimer‐like warning, not a failure.

That is exactly what you should see on Ubuntu. Swift doesn’t need to know the system any more specifically than that.

Presumably registering the unusual location in $PATH should be enough, but I haven’t tested it.


(Trevör Anne Denise) #3

Thank you! It's great to know that old versions of LLVM work with Swift in general, I hope that I'll find a confirmation that it's always possible to specify an alternate LLVM path tough (more specifically that the custom path is correctly taken into account by the compiler).

I need to use Swift for a project where I prefer not to take the risk to be blocked, as time is limited and the project should compile on machines with the configuration I described.