gpt4 book ai didi

swift - Swift 可执行二进制文件是否需要 .swiftmodule、.swiftdoc 和 .build 文件才能运行?

转载 作者:搜寻专家 更新时间:2023-10-31 19:32:30 24 4
gpt4 key购买 nike

我正在使用 Vapor 为 Ubuntu 编写我的 Swift 应用程序。我的任务是为生产提供最小的 Docker 镜像。我已经大幅缩减了图像,但出于好奇,我想知道我的最终可执行文件是否需要所有已编译的 .module.doc .build 文件在同一目录?

最佳答案

tl;dr:不。

您列出的文件夹/文件是构建过程的副产品,可以安全地丢弃。

就分发而言,您的应用程序就像任何其他 Linux 可执行文件一样。您必须在目标系统上拥有所有可用的动态链接库。

这些包括 Swift 工具链的运行时库以及您的应用程序(或其下方的框架)与 (*) 链接的任何已编译 C 模块。

您可以使用ldd 命令检查可执行文件的依赖关系。其中一些作为软件包提供,其中一些需要手动复制到目标系统。


(*) 如果是 Vapor 2 应用程序,此类 C 模块是 libCHTTP.solibCSQLite.so,它们位于您的构建文件夹中。

关于swift - Swift 可执行二进制文件是否需要 .swiftmodule、.swiftdoc 和 .build 文件才能运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47243039/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com