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

创建Gaussian Splatting Anaconda环境时遇编译错误求助

解决Gaussian Splatting安装中diff_gaussian_rasterization/simple_knn的crtdefs.h缺失问题

核心解决方案

1. 使用VS专用命令行执行安装

crtdefs.h属于Windows SDK组件,普通命令行可能未正确加载SDK的环境变量。操作步骤:

  • 打开Visual Studio Installer,确认已安装对应版本的Windows SDK(如VS2022搭配Windows 11 SDK 10.0.22621.x)
  • 启动x64 Native Tools Command Prompt for VS <你的版本>,在该窗口内依次执行:
    git clone github.com/graphdeco-inria/gaussian-splatting --recursive
    SET DISTUTILS_USE_SDK=1
    conda env create --file environment.yml
    

2. 手动补充Windows SDK头文件路径

若不想使用VS命令行,可手动指定UCRT头文件路径:

  • 找到你的Windows SDK UCRT路径,通常为C:\Program Files (x86)\Windows Kits\10\Include\<SDK版本号>\ucrt(替换<SDK版本号>为实际数值,如10.0.22621.0)
  • 在命令行中添加环境变量后再执行安装:
    SET INCLUDE=C:\Program Files (x86)\Windows Kits\10\Include\<你的SDK版本>\ucrt;%INCLUDE%
    SET DISTUTILS_USE_SDK=1
    conda env create --file environment.yml
    

3. 对齐CUDA与PyTorch编译版本(可选)

虽然版本 mismatch提示大概率不影响,但如果上述方法无效,可尝试完全匹配:

  • 卸载CUDA 11.8,安装PyTorch编译依赖的CUDA 11.6
  • 重新安装适配CUDA 11.6的PyTorch:
    pip3 install torch==1.13.1+cu116 torchvision==0.14.1+cu116 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu116
    
  • 再次执行conda环境创建命令

问题根源说明

crtdefs.h是Windows通用C运行时(UCRT)的核心头文件,nvcc编译CUDA扩展时需要从Windows SDK中读取该文件。此前的操作虽安装了VS C++构建工具,但未通过专用命令行加载完整的编译环境变量,导致SDK路径未被正确识别。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 13:43:10