如何在Ubuntu 22.04.4生产服务器安装Swift核心库解决依赖错误?
解决Ubuntu Server 22.04上Swift可执行文件缺失libswiftCore.so的问题
方案1:安装Swift运行时依赖
Ubuntu官方源提供了Swift运行时的预编译包,直接安装即可匹配本地编译版本:
- 更新系统包索引:
sudo apt update - 先在本地开发机执行
swift --version确认使用的Swift版本(比如5.9),再在服务器安装对应版本的运行时库:
若官方源找不到对应版本,可先添加Swift官方源后再安装:sudo apt install libswiftcore5.9 libswiftfoundation5.9 libswiftglibc5.9curl -s https://archive.swiftlang.org/install.sh | sudo bash sudo apt update && sudo apt install swiftlang-runtime-5.9
方案2:编译静态链接的独立二进制
如果想彻底摆脱运行时依赖,可在本地编译时指定静态链接参数,生成不依赖系统Swift库的独立可执行文件:
在本地开发机执行构建命令:
swift build --configuration release -Xswiftc -static-stdlib -Xlinker -static
将新生成的.build/release/App传输到服务器后,即可直接运行,无需额外安装依赖。
验证修复结果
执行以下命令检查可执行文件的依赖状态,确认问题解决:
ldd ./Server
若输出中libswiftCore.so已显示正常的文件路径,说明依赖配置完成。
内容的提问来源于stack exchange,提问作者user17821694
相关产品推荐
相关产品推荐

