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 除非您确实知道您正在启用什么,否则不建议更改默认构建标签列表。