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

Windows11下Python3.12通过pip安装Yotta失败求助

Windows 11下Python 3.12安装Yotta失败(PyYAML相关报错)

环境信息

  • 系统:Windows 11
  • Python版本:3.12
  • pip版本:24.0
  • 执行命令:pip install -U yotta

报错详情

Collecting pyyaml<6.0,>=5.1 (from valinor<2.0,>=1.1.4->yotta)
  Using cached PyYAML-5.4.1.tar.gz (175 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... error
  error: subprocess-exited-with-error

  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [54 lines of output]
      running egg_info
      writing lib3\PyYAML.egg-info\PKG-INFO
      writing dependency_links to lib3\PyYAML.egg-info\dependency_links.txt
      writing top-level names to lib3\PyYAML.egg-info\top_level.txt
      Traceback (most recent call last):
        File "C:\Python312\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 353, in <module>
          main()
        File "C:\Python312\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "C:\Python312\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 118, in get_requires_for_build_wheel
          return hook(config_settings)
                 ^^^^^^^^^^^^^^^^^^^^^
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\build_meta.py", line 325, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=['wheel'])
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\build_meta.py", line 295, in _get_build_requires
          self.run_setup()
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\build_meta.py", line 311, in run_setup
          exec(code, locals())
        File "<string>", line 271, in <module>
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\__init__.py", line 103, in setup
          return distutils.core.setup(**attrs)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\_distutils\core.py", line 184, in setup
          return run_commands(dist)
                 ^^^^^^^^^^^^^^^^^^
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\_distutils\core.py", line 200, in run_commands
          dist.run_commands()
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\_distutils\dist.py", line 969, in run_commands
          self.run_command(cmd)
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\dist.py", line 968, in run_command
          super().run_command(command)
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\_distutils\dist.py", line 988, in run_command
          cmd_obj.run()
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\command\egg_info.py", line 321, in run
          self.find_sources()
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\command\egg_info.py", line 329, in find_sources
          mm.run()
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\command\egg_info.py", line 550, in run
          self.add_defaults()
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\command\egg_info.py", line 588, in add_defaults
          sdist.add_defaults(self)
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\command\sdist.py", line 102, in add_defaults
          super().add_defaults()
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\_distutils\command\sdist.py", line 250, in add_defaults
          self._add_defaults_ext()
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\_distutils\command\sdist.py", line 335, in _add_defaults_ext
          self.filelist.extend(build_ext.get_source_files())
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "<string>", line 201, in get_source_files
        File "C:\Users\dobbob11\AppData\Local\Temp\pip-build-env-brjy816p\overlay\Lib\site-packages\setuptools\_distutils\cmd.py", line 107, in __getattr__
          raise AttributeError(attr)
      AttributeError: cython_sources
      [end of output]

问题原因

PyYAML 5.4.1版本未适配Python 3.12,且Yotta依赖的valinor限定了PyYAML版本需在>=5.1,<6.0范围内,导致pip尝试从源码编译PyYAML时,因旧版setup脚本与Python 3.12的distutils/setuptools不兼容,触发cython_sources属性错误。

解决方法

方法1:降级Python版本

Python 3.12对旧版第三方库兼容性有限,PyYAML 5.x系列无官方适配支持。将Python降级至3.11或更低版本后,直接执行:

pip install -U yotta

即可完成正常安装。

方法2:手动安装兼容的PyYAML预编译包

  1. 获取适配Python 3.12的PyYAML 5.4.1预编译whl文件(需对应Windows系统及Python版本,如PyYAML-5.4.1-cp312-cp312-win_amd64.whl)
  2. 执行命令安装该预编译包:
pip install PyYAML-5.4.1-cp312-cp312-win_amd64.whl
  1. 再次运行Yotta安装命令:
pip install -U yotta

方法3:提前安装Cython并使用无隔离构建

  1. 先安装Cython依赖:
pip install cython
  1. 使用--no-build-isolation参数跳过pip的构建隔离环境,直接使用当前环境依赖安装Yotta:
pip install -U yotta --no-build-isolation

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 04:00:55