问题:Linux 上的 Swift 工具链位置

我正在研究在 Ubuntu 16.04 服务器上运行 Swift。但是我想确定我应该在哪里安装工具链。

来自swift.org:

如果您在 Linux 上将 Swift 工具链安装到系统根目录以外的目录,则需要使用 Swift 安装的实际路径运行以下命令...

然后从Kitura 的 Setting Up说明:

解压 .tar.gz 文件后,更新 PATH 环境变量,使其包含解压的工具:

$ export PATH=<path to uncompressed tar contents>/usr/bin:$PATH

  1. 安装这类东西的最佳位置在哪里?过去我会依赖apt-get或维护者提供的安装脚本,但 Swift 似乎并非如此。

  2. 不安装在系统根目录有什么好处或坏处?

注意:这个问题与“最佳实践”接壤,我认为这里不赞成。对此我很抱歉;我用谷歌搜索了一下,这似乎是人们隐含地知道的东西。但是,我还没有,需要一些指导

解答

您系统根目录中的软件版本 -/usr/bin/usr/share/usr/lib等 - 由您的发行版的维护者仔细协调,以处理所有合理的依赖关系。维护人员还通过错误修复使软件保持最新。

当您需要安装发行版未提供的软件时,最好将其安装在单独的目录中,例如/opt(在您的情况下,一种可能是/opt/swift-3.1.1)。这将避免用可能与其他软件不兼容的东西覆盖现有的已安装软件(在您的情况下为/usr/bin/lldb/usr/lib/lldb)。并且它可以很容易地卸载(只需rm -r /opt/swift-3.1.1而不必从原始 tarball 中获取可能散布在/usr上的文件列表)。

还有一些额外的工作:您需要将/opt/swift-3.1.1/usr/bin添加到您的PATH1 中。使用某些软件,您需要将包含动态库文件的目录添加到LD_LIBRARY_PATH。该软件的安装说明通常会解释您需要做什么。

[1]改变PATH的另一种方法是在你的 PATH 中已经存在的目录中为每个新的可执行文件添加一个符号链接。 GNU Stow可以帮助您做到这一点。

Logo

Ubuntu 社区为您提供最前沿的新闻资讯和知识内容

更多推荐