github.com/sagernet/sing-box@v1.9.0-rc.20/docs/installation/build-from-source.zh.md (about)

     1  ---
     2  icon: material/file-code
     3  ---
     4  
     5  # 从源代码构建
     6  
     7  ## :material-graph: 要求
     8  
     9  sing-box 1.4.0 前:
    10  
    11  * Go 1.18.5 - 1.20.x
    12  
    13  从 sing-box 1.4.0:
    14  
    15  * Go 1.18.5 - ~
    16  * Go 1.20.0 - ~ 如果启用构建标记 `with_quic`
    17  
    18  从 sing-box 1.5.0:
    19  
    20  * Go 1.18.5 - ~
    21  * Go 1.20.0 - ~ 如果启用构建标记 `with_quic` 或 `with_ech`
    22  
    23  从 sing-box 1.8.0:
    24  
    25  * Go 1.18.5 - ~
    26  * Go 1.20.0 - ~ 如果启用构建标记 `with_quic` 或 `with_utls`
    27  * Go 1.20.1 - ~ 如果启用构建标记 `with_ech`
    28  
    29  您可以从 https://go.dev/doc/install 下载并安装 Go,推荐使用最新版本。
    30  
    31  ## :material-fast-forward: 快速开始
    32  
    33  ```bash
    34  make
    35  ```
    36  
    37  或者构建二进制文件并将其安装到 `$GOBIN`:
    38  
    39  ```bash
    40  make install
    41  ```
    42  
    43  ## :material-cog: 自定义构建
    44  
    45  ```bash
    46  TAGS="tag_a tag_b" make
    47  ```
    48  
    49  or
    50  
    51  ```bash
    52  go build -tags "tag_a tag_b" ./cmd/sing-box
    53  ```
    54  
    55  ## :material-folder-settings: 构建标记
    56  
    57  | 构建标记                               | 默认启动              | 说明                                                                                                                                                                                                                                                                                                                             |
    58  |------------------------------------|-------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
    59  | `with_quic`                        | :material-check:  | Build with QUIC support, see [QUIC and HTTP3 DNS transports](/configuration/dns/server/), [Naive inbound](/configuration/inbound/naive/), [Hysteria Inbound](/configuration/inbound/hysteria/), [Hysteria Outbound](/configuration/outbound/hysteria/) and [V2Ray Transport#QUIC](/configuration/shared/v2ray-transport#quic). |
    60  | `with_grpc`                        | :material-close:️ | Build with standard gRPC support, see [V2Ray Transport#gRPC](/configuration/shared/v2ray-transport#grpc).                                                                                                                                                                                                                      |
    61  | `with_dhcp`                        | :material-check:  | Build with DHCP support, see [DHCP DNS transport](/configuration/dns/server/).                                                                                                                                                                                                                                                 |
    62  | `with_wireguard`                   | :material-check:  | Build with WireGuard support, see [WireGuard outbound](/configuration/outbound/wireguard/).                                                                                                                                                                                                                                    |
    63  | `with_ech`                         | :material-check:  | Build with TLS ECH extension support for TLS outbound, see [TLS](/configuration/shared/tls#ech).                                                                                                                                                                                                                               |
    64  | `with_utls`                        | :material-check:  | Build with [uTLS](https://github.com/refraction-networking/utls) support for TLS outbound, see [TLS](/configuration/shared/tls#utls).                                                                                                                                                                                          |
    65  | `with_reality_server`              | :material-check:  | Build with reality TLS server support,  see [TLS](/configuration/shared/tls/).                                                                                                                                                                                                                                                 |
    66  | `with_acme`                        | :material-check:  | Build with ACME TLS certificate issuer support, see [TLS](/configuration/shared/tls/).                                                                                                                                                                                                                                         |
    67  | `with_clash_api`                   | :material-check:  | Build with Clash API support, see [Experimental](/configuration/experimental#clash-api-fields).                                                                                                                                                                                                                                |
    68  | `with_v2ray_api`                   | :material-close:️ | Build with V2Ray API support, see [Experimental](/configuration/experimental#v2ray-api-fields).                                                                                                                                                                                                                                |
    69  | `with_gvisor`                      | :material-check:  | Build with gVisor support, see [Tun inbound](/configuration/inbound/tun#stack) and [WireGuard outbound](/configuration/outbound/wireguard#system_interface).                                                                                                                                                                   |
    70  | `with_embedded_tor` (CGO required) | :material-close:️ | Build with embedded Tor support, see [Tor outbound](/configuration/outbound/tor/).                                                                                                                                                                                                                                             |
    71  
    72  除非您确实知道您正在启用什么,否则不建议更改默认构建标签列表。