---
title: 源码编译构建
description: "获取SGLang源码，从源码构建Python wheel和CUDA扩展wheel后安装构建产物。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengai/ecosystemEnable/sglang/kunpengsglang_16_0005.html
sourcePath: /source/zh/kunpengai/ecosystemEnable/sglang/kunpengsglang_16_0005.html
indexId: db608a628bc229f5596efcb0625a0abf69e8ec374577f17e36a41b6d30625f2170
---
# 源码编译构建

获取SGLang源码，从源码构建Python wheel和CUDA扩展wheel后安装构建产物。

1. 获取SGLang 0.5.10源码。
  1 git clone --branch v0.5.10 --depth 1 https://github.com/sgl-project/sglang.git

2. 从源码构建Python wheel。
  1 2 3 4 cd sglang SETUPTOOLS_SCM_PRETEND_VERSION=0.5.10 \ python3 -m pip wheel --no-build-isolation --no-deps \ --wheel-dir /tmp/sglang-build/python ./python

3. 从源码构建CUDA扩展wheel。
  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 export CUDA_HOME=/usr/local/cuda-13.0 export PATH=$CUDA_HOME/bin:$PATH export LD_LIBRARY_PATH=$CUDA_HOME/lib64:${LD_LIBRARY_PATH:-} export TORCH_CUDA_ARCH_LIST="8.0" export MAX_JOBS=8 export NVCC_THREADS=1 export CMAKE_BUILD_PARALLEL_LEVEL=8 export CMAKE_ARGS="-DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_CUDA_ARCHITECTURES=80" export Torch_DIR=$(python3 - <<'PY' import pathlib import torch print(pathlib.Path(torch.__file__).resolve().parent / "share" / "cmake" / "Torch") PY ) export CMAKE_PREFIX_PATH=$(python3 - <<'PY' import torch.utils print(torch.utils.cmake_prefix_path) PY ) python3 -m pip wheel --no-build-isolation --no-deps \ --wheel-dir /tmp/sglang-build/kernel ./sgl-kernel

4. 安装本地构建产物。
  1 2 3 4 5 6 7 8 python3 -m pip install \ typing_extensions filelock fsspec jinja2 networkx sympy mpmath numpy packaging \ tqdm requests aiohttp fastapi uvicorn pydantic orjson pyzmq psutil pillow \ sentencepiece safetensors tokenizers transformers==5.3.0 pybase64 setproctitle \ partial_json_parser diskcache msgspec interegular lark pycountry pycryptodomex \ gguf openai anthropic prometheus-client uvloop watchfiles soundfile tiktoken IPython python3 -m pip install --force-reinstall --no-deps /tmp/sglang-build/kernel/*.whl python3 -m pip install --force-reinstall --no-deps /tmp/sglang-build/python/*.whl

  安装本地构建产物时使用--no-deps，用于保留前面已确认的CUDA版本PyTorch，避免依赖解析过程替换PyTorch版本。安装完成后，应再次确认torch.backends.cuda.is_built()和torch.cuda.is_available()均为True。

  构建产物示例如下：

  1 2 sglang-0.5.10-py3-none-any.whl sglang_kernel-0.4.1-*.whl
