You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

构建Windows 10 Min镜像后启动Triton Server遇构建错误求助

Triton Server Windows构建错误解决方案

错误1:cmake未被识别

问题现象

执行以下构建命令时:

python build.py -v --no-container-pull --image=gpu-base,win10-py3-min --enable-logging --enable-stats --enable-tracing --enable-gpu --endpoint=grpc --endpoint=http --repo-tag=common:r22.10 --repo-tag=core:r22.10 --repo-tag=backend:r22.10 --repo-tag=thirdparty:r22.10 --backend=ensemble --backend=tensorrt:r22.10

出现错误:

cmake : The term 'cmake' is not recognized as the name of a cmdlet, function, script file, or operable program.

解决步骤

  • 安装并配置CMake:确保Windows系统或构建镜像中安装了3.18及以上版本的CMake。若在镜像内构建,可通过Chocolatey安装并自动配置PATH:
    choco install cmake --installargs 'ADD_CMAKE_TO_PATH=System'
    
  • 验证PATH环境变量:确认CMake安装目录(默认C:\Program Files\CMake\bin)已添加到系统PATH,重启终端后重新执行构建。
  • 指定CMake完整路径:若无法修改PATH,可直接在cmake_build.ps1脚本中将cmake替换为完整路径,例如"C:\Program Files\CMake\bin\cmake.exe"。

错误2:triton_json.h编译错误

问题现象

更换--image=base,win10-py3-min参数后执行构建,出现triton_json.h相关编译错误:

C:\tmp\tritonbuild\tritonserver\build\_deps\repo-core-build\triton-core\_deps\repo-common-src\include\triton\common\triton_json.h(641,35): error C2039: 'GetObjectA': is not a member of 'rapidjson::GenericValue<...>'
C:\tmp\tritonbuild\tritonserver\build\_deps\repo-core-build\triton-core\_deps\repo-common-src\include\triton\common\triton_json.h(641,1): error C2530: 'm': references must be initialized
C:\tmp\tritonbuild\tritonserver\build\_deps\repo-core-build\triton-core\_deps\repo-common-src\include\triton\common\triton_json.h(641,1): error C3531: 'm': a symbol whose type contains 'auto' must have an initializer
C:\tmp\tritonbuild\tritonserver\build\_deps\repo-core-build\triton-core\_deps\repo-common-src\include\triton\common\triton_json.h(641,26): error C2143: syntax error: missing ';' before ':'

解决步骤

  • 启用C++17编译标准:错误中的结构化绑定语法需要C++17支持,在CMake配置中添加以下选项:
    set(CMAKE_CXX_STANDARD 17)
    set(CMAKE_CXX_STANDARD_REQUIRED ON)
    
  • 匹配RapidJSON版本:确保repo-tag=thirdparty:r22.10参数正确生效,拉取与r22.10分支兼容的第三方依赖版本,避免因RapidJSON版本差异导致API不匹配。
  • 修复代码兼容性:若上述步骤无效,可临时修改triton_json.h第641行代码,替换结构化绑定为显式调用(需匹配当前RapidJSON API):
    将原代码(推测):
    auto& [m, o] = value.GetObjectA();
    
    修改为:
    auto& o = value.GetObject();
    
  • 更新MSVC编译器:使用Visual Studio 2019及以上版本的Build Tools,确保编译器完全支持C++17特性。

内容的提问来源于stack exchange,提问作者Gp01

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 22:50:22