如何使用 Swift 包管理器 `swift build` 命令构建 Swift 包的优化版本
How to build optimized version of Swift Package using the Swift Package Manager `swift build` command
我想将以新 Swift 包管理器格式编写的 swift 代码编译成高度优化的二进制代码。目前可以使用 swiftc -O somefile.swift
但是由于 swift 包是使用 swift build
命令构建的,我无法传递 -O
选项,因为它不接受它。那么有没有办法指定在编译过程中优化代码呢?
您可以构建发布配置:swift build --configuration release
。
您还可以通过以下方式查看工具使用情况:
$ swift build --help
OVERVIEW: Build sources into binary products
USAGE: swift build [mode] [options]
MODES:
-c, --configuration <value> Build with configuration (debug|release) [default: debug]
--clean [<mode>] Delete artifacts (build|dist) [default: build]
OPTIONS:
-C, --chdir <path> Change working directory before any other operation
--build-path <path> Specify build/cache directory [default: ./.build]
--color <mode> Specify color mode (auto|always|never) [default: auto]
-v, --verbose Increase verbosity of informational output
-Xcc <flag> Pass flag through to all C compiler invocations
-Xlinker <flag> Pass flag through to all linker invocations
-Xswiftc <flag> Pass flag through to all Swift compiler invocations
NOTE: Use `swift package` to perform other functions on packages
其中列出了这个选项。
有关详细信息,请参阅包管理器 reference。
我想将以新 Swift 包管理器格式编写的 swift 代码编译成高度优化的二进制代码。目前可以使用 swiftc -O somefile.swift
但是由于 swift 包是使用 swift build
命令构建的,我无法传递 -O
选项,因为它不接受它。那么有没有办法指定在编译过程中优化代码呢?
您可以构建发布配置:swift build --configuration release
。
您还可以通过以下方式查看工具使用情况:
$ swift build --help
OVERVIEW: Build sources into binary products
USAGE: swift build [mode] [options]
MODES:
-c, --configuration <value> Build with configuration (debug|release) [default: debug]
--clean [<mode>] Delete artifacts (build|dist) [default: build]
OPTIONS:
-C, --chdir <path> Change working directory before any other operation
--build-path <path> Specify build/cache directory [default: ./.build]
--color <mode> Specify color mode (auto|always|never) [default: auto]
-v, --verbose Increase verbosity of informational output
-Xcc <flag> Pass flag through to all C compiler invocations
-Xlinker <flag> Pass flag through to all linker invocations
-Xswiftc <flag> Pass flag through to all Swift compiler invocations
NOTE: Use `swift package` to perform other functions on packages
其中列出了这个选项。
有关详细信息,请参阅包管理器 reference。