如何在 Windows + MSVC 环境下开启 POSIX 数学常量支持?

Ruyi-Zha/r2_gaussian: “Rectifying Radiative Gaussian Splatting for Tomographic Reconstruction” (NeurIPS 2024)

修改 setup.py文件可以吗
可以修改 setup.py 文件,尤其是在需要适配特定环境(如 Windows + MSVC)或调整编译参数时,修改该文件是常见的解决方案。结合你使用的 xray-gaussian-rasterization-voxelization 子模块的 setup.py,以下是一些可能的修改场景和方法:

1. 解决编译错误(如 M_PI 未定义)

在 Windows + MSVC 环境下,若遇到 M_PI 等数学常量未定义的问题,可以在 setup.py 中为 CUDA 编译器添加宏定义 _USE_MATH_DEFINES,强制开启 POSIX 数学常量支持。
修改 extra_compile_args 部分,为 nvcc 添加 -D_USE_MATH_DEFINES
python
运行
extra_compile_args={
    "nvcc": [
        "-I" + os.path.join(os.path.dirname(os.path.abspath(__file__)), "third_party/glm/"),
        "-D_USE_MATH_DEFINES"  # 添加此宏定义
    ],
    # 若需要对 C++ 编译器(如 MSVC)也生效,可添加以下配置
    "cxx": [
        "/D_USE_MATH_DEFINES"  # MSVC 的宏定义格式
    ]
}

 

作者: 高志远

高志远,24岁,男生

发表评论

邮箱地址不会被公开。