游乐游手机版
首页/系统平台/文章详情

如何在Linux系统上安装Swift编程语言详细步骤教程

时间:2026-07-01 07:35
在Linux上安装Swift需手动下载官方工具链并放置于 opt swift,配置PATH和LD_LIBRARY_PATH指向bin和lib目录,否则swiftbuild会因库缺失而失败。系统需为Ubuntu Debian,注意CPU架构与glibc版本需不低于2 28。解压后设置环境变量至~ bashrc并执行source命令使其生效,VSCode调试前

在 Linux 系统中安装 Swift 并非像 apt install swift 那样简单。你需要手动下载官方工具链,并正确配置两个关键环境变量——尤其是 LD_LIBRARY_PATH。否则,即使 swift --version 能正常显示版本号,执行 swift build 时仍然会失败。这并非玄学,而是 Swift 运行时依赖动态库的底层机制决定的。

直接说结论:即使终端中 swift --version 输出正常,只要 LD_LIBRARY_PATH 配置有误,swift build 必然失败。这个陷阱很多新手都会遇到,看似莫名其妙,实则完全可以预期。

下载前,务必确认系统兼容性

Swift 官方仅针对 Ubuntu/Debian 系提供预编译包,CentOS 或 RHEL 用户无法直接安装。截至 2026 年中,推荐的两个版本是稳定的 swift-5.9-RELEASE 或尝鲜版 swift-6.0-SNAPSHOT-2026-04-15-a

但别急着下载,有几个细节需留意:

  • 首先,使用 uname -m 确认你的 CPU 架构。x86_64 架构选择 ubuntu22.04ubuntu24.04 包;若为 ARM 架构(如服务器或树莓派),则必须选择名称中包含 aarch64 的版本。
  • 运行 ldd --version 查看 glibc 版本。Ubuntu 22.04 及更新版本通常可直接运行;但若仍在使用 Ubuntu 18.04 或更旧系统,建议降级至 swift-5.7,否则解压后执行 swift 时可能遇到“No such file or directory”错误——实际上并非文件缺失,而是动态库链接失败。
  • 另外,不要随意复制网上旧教程中的 wget 链接,许多已失效(404)。正确做法是前往 Swift 官网的 Linux 栏目,找到对应系统与版本的最新 Release 或 Snapshot 链接,手动复制。

解压后,两条环境变量必不可少

swift 命令本身只是一个外壳,真正的核心——libswiftCore.solibsourcekitd.so 等动态库——位于 usr/lib/swift/linux/ 目录下。Linux 的动态链接器默认不会扫描该路径。因此,仅设置 PATH 就像买了电视却忘了装电池,遥控器按了也没反应。

正确的操作流程如下:

  • 解压到用户目录,例如 tar xzf swift-5.9-RELEASE-ubuntu22.04.tar.gz -C ~/,会得到 ~/swift-5.9-RELEASE-ubuntu22.04/ 目录。
  • 打开 ~/.bashrc,在末尾添加以下两行(请根据实际路径修改):
    export PATH=$HOME/swift-5.9-RELEASE-ubuntu22.04/usr/bin:$PATH
    export LD_LIBRARY_PATH=$HOME/swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux:$LD_LIBRARY_PATH
  • 执行 source ~/.bashrc 使配置生效。如果你使用 VSCode,请务必完全重启窗口——它的集成终端不会自动继承新环境变量。
  • 另外,有一个容易被忽略的干扰项:如果你之前通过 Snap 安装过 Swift(例如从 Ubuntu 软件中心安装),必须首先执行 sudo snap remove swift。因为 Snap 的沙盒机制会屏蔽手动设置的 LD_LIBRARY_PATH,导致配置始终无效。

VSCode 调试前的三重检查

安装了 vonage.vscode-swift 插件,并不代表就能顺利调试。它仅提供了界面,真正的核心——sourcekit-lsplldb——需要正确配置且版本匹配。

建议按照以下顺序检查:

  • 运行 which sourcekit-lsp,输出结果应为你的 Swift 工具链路径,例如 /home/xxx/swift-5.9-RELEASE-ubuntu22.04/usr/bin/sourcekit-lsp。如果输出是系统路径或其他位置,说明路径配置有误。
  • 在 VSCode 设置中显式填写 swift.path.sourceKitLSP 字段,值即为上述绝对路径。自动发现功能不可靠,手动指定最为稳妥。
  • lldb 版本必须与 Swift 工具链匹配。Ubuntu 22.04+ 推荐安装 lldb-16sudo apt install lldb-16),并在 .vscode/launch.json 中固定配置:"lldb.executable": "/usr/bin/lldb-16"

整个过程中,最容易被忽视的是 LD_LIBRARY_PATH 未正确生效,或 VSCode 未重启导致 sourcekit-lsp 启动后立即退出。此时查看日志,通常只会看到空行或简单的“connection closed”,完全不会提示具体问题所在。

正是这些看似微不足道的细节,往往决定了 Swift 在 Linux 上能否顺利运行。谨慎对待,总是值得的。

来源:https://www.php.cn/faq/2743981.html
上一篇Linux中安装Valgrind内存泄漏检测工具教程 下一篇Linux进程信号处理方法查看指南
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
麒麟系统字体太小看不清如何调整界面字体大小
系统平台 · 2026-07-01

麒麟系统字体太小看不清如何调整界面字体大小

麒麟系统高分屏字体过小需分层干预:控制中心调整缩放至150%或200%,辅助功能增大文本,命令行设置MateDPI值(2K设200 0,4K设220 0),QT类软件用环境变量QT_DEVICE_PIXEL_RATIO=2,终端取消使用系统等宽字体并改字号,输入法候选字体调至16或18。

Win11记事本默认不换行如何设置为自动换行
系统平台 · 2026-07-01

Win11记事本默认不换行如何设置为自动换行

Windows11记事本默认不自动换行,手动开启仅对当前窗口有效。若要永久启用,可修改注册表,在HKCU Software Microsoft Notepad路径下新建DWORD值fWrap并设为1,或导入含此设置的 reg文件,此后所有新建记事本文件均自动换行显示,无需重复手动操作,一劳永逸。

银河麒麟系统时间快几分钟的调整方法
系统平台 · 2026-07-01

银河麒麟系统时间快几分钟的调整方法

银河麒麟系统时钟快几分钟的解决方法:先用date命令校正系统时间,再执行hwclock--systohc写入硬件时钟;启用systemd-timesyncd并配置阿里云NTP服务器;禁用chronyd避免服务冲突;双系统用户需设置硬件时钟为UTC模式。

Win11多屏下设置软件只在特定屏幕打开的方法
系统平台 · 2026-07-01

Win11多屏下设置软件只在特定屏幕打开的方法

双屏办公时,通过快捷方式添加启动参数、利用Windows窗口位置记忆功能或PowerShell脚本,可让软件自动在副屏打开,免去手动拖拽,提升工作效率。

MacBook如何取消菜单栏蓝牙搜索状态
系统平台 · 2026-07-01

MacBook如何取消菜单栏蓝牙搜索状态

在macOS中,进入系统设置“控制中心”,将蓝牙设为“不显示在菜单栏”即可隐藏图标且功能正常;旧版系统则在蓝牙偏好设置中取消勾选“在菜单栏中显示”。