Environment
window11 4090 24gb python3.13 cuda12.9
pip3 install torch torchvision --index-url https://download.pytorch.org/whl/cu129
When trying to install from source on Windows using Python 3.13, the build fails
🖥️ Environment
OS: Windows 11
Python: 3.13
PyTorch: 2.4+ (compiled with CUDA 12.9)
NVCC: 12.9.41
CUDA: 12.9
🐛 log
(venv) E:\模型构建\SageAttention>set DISTUTILS_USE_SDK=1
(venv) E:\模型构建\SageAttention>
(venv) E:\模型构建\SageAttention>python setup.py develop
Detect GPUs with compute capabilities: {'12.0'}
running develop
E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools\command\develop.py:42: EasyInstallDeprecationWarning: easy_install command is deprecated.
!!
********************************************************************************
Please avoid running ``setup.py`` and ``easy_install``.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://github.com/pypa/setuptools/issues/917 for details.
********************************************************************************
!!
easy_install.initialize_options(self)
E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!
********************************************************************************
Please avoid running ``setup.py`` directly.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
********************************************************************************
!!
self.initialize_options()
running egg_info
creating sageattention.egg-info
writing sageattention.egg-info\PKG-INFO
writing dependency_links to sageattention.egg-info\dependency_links.txt
writing top-level names to sageattention.egg-info\top_level.txt
writing manifest file 'sageattention.egg-info\SOURCES.txt'
reading manifest file 'sageattention.egg-info\SOURCES.txt'
adding license file 'LICENSE'
writing manifest file 'sageattention.egg-info\SOURCES.txt'
running build_ext
building 'sageattention._qattn_sm80' extension
creating E:\模型构建\SageAttention\build
creating E:\模型构建\SageAttention\build\temp.win-amd64-cpython-313
creating E:\模型构建\SageAttention\build\temp.win-amd64-cpython-313\Release
creating E:\模型构建\SageAttention\build\temp.win-amd64-cpython-313\Release\sageattention._qattn_sm80
creating E:\模型构建\SageAttention\build\temp.win-amd64-cpython-313\Release\sageattention._qattn_sm80\csrc
creating E:\模型构建\SageAttention\build\temp.win-amd64-cpython-313\Release\sageattention._qattn_sm80\csrc\qattn
ninja: error: 'E:/模型构建/SageAttention/csrc/qattn/pybind_sm80.cpp', needed by 'E:/模型构建/SageAttention/build/temp.win-amd64-cpython-313/Release/sageattention._qattn_sm80/csrc/qattn/pybind_sm80.obj', missing and no known rule to make it
Traceback (most recent call last):
File "E:\模型构建\SageAttention\venv\Lib\site-packages\torch\utils\cpp_extension.py", line 2595, in _run_ninja_build
subprocess.run(
~~~~~~~~~~~~~~^
command,
^^^^^^^^
...<4 lines>...
check=True,
^^^^^^^^^^^
env=env)
^^^^^^^^
File "C:\Users\22129\AppData\Local\Programs\Python\Python313\Lib\subprocess.py", line 577, in run
raise CalledProcessError(retcode, process.args,
output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "E:\模型构建\SageAttention\setup.py", line 220, in
setup(
~~~~~^
name='sageattention',
^^^^^^^^^^^^^^^^^^^^^
...<10 lines>...
cmdclass={"build_ext": BuildExtensionSeparateDir} if ext_modules else {},
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_init_.py", line 103, in setup
return distutils.core.setup(**attrs)
~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\core.py", line 184, in setup
return run_commands(dist)
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\core.py", line 200, in run_commands
dist.run_commands()
~~~~~~~~~~~~~~~~~^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\dist.py", line 970, in run_commands
self.run_command(cmd)
~~~~~~~~~~~~~~~~^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools\dist.py", line 974, in run_command
super().run_command(command)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\dist.py", line 989, in run_command
cmd_obj.run()
~~~~~~~~~~~^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools\command\develop.py", line 36, in run
self.install_for_development()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools\command\develop.py", line 113, in install_for_development
self.run_command('build_ext')
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\cmd.py", line 316, in run_command
self.distribution.run_command(command)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools\dist.py", line 974, in run_command
super().run_command(command)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\dist.py", line 989, in run_command
cmd_obj.run()
~~~~~~~~~~~^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools\command\build_ext.py", line 93, in run
_build_ext.run(self)
~~~~~~~~~~~~~~^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\command\build_ext.py", line 359, in run
self.build_extensions()
~~~~~~~~~~~~~~~~~~~~~^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\torch\utils\cpp_extension.py", line 1072, in build_extensions
build_ext.build_extensions(self)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\command\build_ext.py", line 479, in build_extensions
self._build_extensions_serial()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\command\build_ext.py", line 505, in _build_extensions_serial
self.build_extension(ext)
~~~~~~~~~~~~~~~~~~~~^^^^^
File "E:\模型构建\SageAttention\setup.py", line 216, in build_extension
objects = super().build_extension(ext)
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools\command\build_ext.py", line 254, in build_extension
_build_ext.build_extension(self, ext)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\command\build_ext.py", line 560, in build_extension
objects = self.compiler.compile(
sources,
...<5 lines>...
depends=ext.depends,
)
File "E:\模型构建\SageAttention\setup.py", line 207, in compile_new
return compile_orig(*args, **{
**kwargs,
...<2 lines>...
self.thread_ext_name_map[threading.current_thread().ident]),
})
File "E:\模型构建\SageAttention\venv\Lib\site-packages\torch\utils\cpp_extension.py", line 1041, in win_wrap_ninja_compile
_write_ninja_file_and_compile_objects(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
sources=sources,
^^^^^^^^^^^^^^^^
...<11 lines>...
with_cuda=with_cuda,
^^^^^^^^^^^^^^^^^^^^
with_sycl=False)
^^^^^^^^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\torch\utils\cpp_extension.py", line 2227, in _write_ninja_file_and_compile_objects
_run_ninja_build(
~~~~~~~~~~~~~~~~^
build_directory,
^^^^^^^^^^^^^^^^
...<2 lines>...
# that failed to build but there isn't a good way to get it here.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error_prefix='Error compiling objects for extension')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\torch\utils\cpp_extension.py", line 2612, in _run_ninja_build
raise RuntimeError(message) from e
RuntimeError: Error compiling objects for extension
Environment
window11 4090 24gb python3.13 cuda12.9
pip3 install torch torchvision --index-url https://download.pytorch.org/whl/cu129
When trying to install from source on Windows using Python 3.13, the build fails
🖥️ Environment
OS: Windows 11
Python: 3.13
PyTorch: 2.4+ (compiled with CUDA 12.9)
NVCC: 12.9.41
CUDA: 12.9
🐛 log
(venv) E:\模型构建\SageAttention>set DISTUTILS_USE_SDK=1
(venv) E:\模型构建\SageAttention>
(venv) E:\模型构建\SageAttention>python setup.py develop
Detect GPUs with compute capabilities: {'12.0'}
running develop
E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools\command\develop.py:42: EasyInstallDeprecationWarning: easy_install command is deprecated.
!!
!!
easy_install.initialize_options(self)
E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!
!!
self.initialize_options()
running egg_info
creating sageattention.egg-info
writing sageattention.egg-info\PKG-INFO
writing dependency_links to sageattention.egg-info\dependency_links.txt
writing top-level names to sageattention.egg-info\top_level.txt
writing manifest file 'sageattention.egg-info\SOURCES.txt'
reading manifest file 'sageattention.egg-info\SOURCES.txt'
adding license file 'LICENSE'
writing manifest file 'sageattention.egg-info\SOURCES.txt'
running build_ext
building 'sageattention._qattn_sm80' extension
creating E:\模型构建\SageAttention\build
creating E:\模型构建\SageAttention\build\temp.win-amd64-cpython-313
creating E:\模型构建\SageAttention\build\temp.win-amd64-cpython-313\Release
creating E:\模型构建\SageAttention\build\temp.win-amd64-cpython-313\Release\sageattention._qattn_sm80
creating E:\模型构建\SageAttention\build\temp.win-amd64-cpython-313\Release\sageattention._qattn_sm80\csrc
creating E:\模型构建\SageAttention\build\temp.win-amd64-cpython-313\Release\sageattention._qattn_sm80\csrc\qattn
ninja: error: 'E:/模型构建/SageAttention/csrc/qattn/pybind_sm80.cpp', needed by 'E:/模型构建/SageAttention/build/temp.win-amd64-cpython-313/Release/sageattention._qattn_sm80/csrc/qattn/pybind_sm80.obj', missing and no known rule to make it
Traceback (most recent call last):
File "E:\模型构建\SageAttention\venv\Lib\site-packages\torch\utils\cpp_extension.py", line 2595, in _run_ninja_build
subprocess.run(
~~~~~~~~~~~~~~^
command,
^^^^^^^^
...<4 lines>...
check=True,
^^^^^^^^^^^
env=env)
^^^^^^^^
File "C:\Users\22129\AppData\Local\Programs\Python\Python313\Lib\subprocess.py", line 577, in run
raise CalledProcessError(retcode, process.args,
output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "E:\模型构建\SageAttention\setup.py", line 220, in
setup(
~~~~~^
name='sageattention',
^^^^^^^^^^^^^^^^^^^^^
...<10 lines>...
cmdclass={"build_ext": BuildExtensionSeparateDir} if ext_modules else {},
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_init_.py", line 103, in setup
return distutils.core.setup(**attrs)
~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\core.py", line 184, in setup
return run_commands(dist)
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\core.py", line 200, in run_commands
dist.run_commands()
~~~~~~~~~~~~~~~~~^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\dist.py", line 970, in run_commands
self.run_command(cmd)
~~~~~~~~~~~~~~~~^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools\dist.py", line 974, in run_command
super().run_command(command)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\dist.py", line 989, in run_command
cmd_obj.run()
~~~~~~~~~~~^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools\command\develop.py", line 36, in run
self.install_for_development()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools\command\develop.py", line 113, in install_for_development
self.run_command('build_ext')
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\cmd.py", line 316, in run_command
self.distribution.run_command(command)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools\dist.py", line 974, in run_command
super().run_command(command)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\dist.py", line 989, in run_command
cmd_obj.run()
~~~~~~~~~~~^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools\command\build_ext.py", line 93, in run
_build_ext.run(self)
~~~~~~~~~~~~~~^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\command\build_ext.py", line 359, in run
self.build_extensions()
~~~~~~~~~~~~~~~~~~~~~^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\torch\utils\cpp_extension.py", line 1072, in build_extensions
build_ext.build_extensions(self)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\command\build_ext.py", line 479, in build_extensions
self._build_extensions_serial()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\command\build_ext.py", line 505, in _build_extensions_serial
self.build_extension(ext)
~~~~~~~~~~~~~~~~~~~~^^^^^
File "E:\模型构建\SageAttention\setup.py", line 216, in build_extension
objects = super().build_extension(ext)
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools\command\build_ext.py", line 254, in build_extension
_build_ext.build_extension(self, ext)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\setuptools_distutils\command\build_ext.py", line 560, in build_extension
objects = self.compiler.compile(
sources,
...<5 lines>...
depends=ext.depends,
)
File "E:\模型构建\SageAttention\setup.py", line 207, in compile_new
return compile_orig(*args, **{
**kwargs,
...<2 lines>...
self.thread_ext_name_map[threading.current_thread().ident]),
})
File "E:\模型构建\SageAttention\venv\Lib\site-packages\torch\utils\cpp_extension.py", line 1041, in win_wrap_ninja_compile
_write_ninja_file_and_compile_objects(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
sources=sources,
^^^^^^^^^^^^^^^^
...<11 lines>...
with_cuda=with_cuda,
^^^^^^^^^^^^^^^^^^^^
with_sycl=False)
^^^^^^^^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\torch\utils\cpp_extension.py", line 2227, in _write_ninja_file_and_compile_objects
_run_ninja_build(
~~~~~~~~~~~~~~~~^
build_directory,
^^^^^^^^^^^^^^^^
...<2 lines>...
# that failed to build but there isn't a good way to get it here.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error_prefix='Error compiling objects for extension')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\模型构建\SageAttention\venv\Lib\site-packages\torch\utils\cpp_extension.py", line 2612, in _run_ninja_build
raise RuntimeError(message) from e
RuntimeError: Error compiling objects for extension