【问题标题】:Getting TypeError when installing KivyMD安装 KivyMD 时出现 TypeError
【发布时间】:2021-01-08 06:14:42
【问题描述】:

通过pip install https://github.com/kivymd/KivyMD/archive/master.zip 安装KivyMD 时出现此错误

Collecting https://github.com/kivymd/KivyMD/archive/master.zip
  Downloading https://github.com/kivymd/KivyMD/archive/master.zip
     \ 10.7 MB 639 kB/s
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... error
    ERROR: Command errored out with exit status 1:
     command: /usr/bin/python3 /usr/local/lib/python3.7/dist-packages/pip/_vendor/pep517/_in_process.py prepare_metadata_for_build_wheel /tmp/tmpdb_2q5o4
         cwd: /tmp/pip-req-build-u9xq525y
    Complete output (42 lines):
    fatal: not a git repository (or any of the parent directories): .git
    running dist_info
    creating /tmp/pip-modern-metadata-p_dv2dq5/kivymd.egg-info
    writing /tmp/pip-modern-metadata-p_dv2dq5/kivymd.egg-info/PKG-INFO
    writing dependency_links to /tmp/pip-modern-metadata-p_dv2dq5/kivymd.egg-info/dependency_links.txt
    writing entry points to /tmp/pip-modern-metadata-p_dv2dq5/kivymd.egg-info/entry_points.txt
    writing requirements to /tmp/pip-modern-metadata-p_dv2dq5/kivymd.egg-info/requires.txt
    writing top-level names to /tmp/pip-modern-metadata-p_dv2dq5/kivymd.egg-info/top_level.txt
    writing manifest file '/tmp/pip-modern-metadata-p_dv2dq5/kivymd.egg-info/SOURCES.txt'
    reading manifest file '/tmp/pip-modern-metadata-p_dv2dq5/kivymd.egg-info/SOURCES.txt'
    writing manifest file '/tmp/pip-modern-metadata-p_dv2dq5/kivymd.egg-info/SOURCES.txt'
    creating '/tmp/pip-modern-metadata-p_dv2dq5/kivymd.dist-info'
    Traceback (most recent call last):
      File "/usr/local/lib/python3.7/dist-packages/pip/_vendor/pep517/_in_process.py", line 280, in <module>
        main()
      File "/usr/local/lib/python3.7/dist-packages/pip/_vendor/pep517/_in_process.py", line 263, in main
        json_out['return_val'] = hook(**hook_input['kwargs'])
      File "/usr/local/lib/python3.7/dist-packages/pip/_vendor/pep517/_in_process.py", line 133, in prepare_metadata_for_build_wheel
        return hook(metadata_directory, config_settings)
      File "/usr/local/lib/python3.7/dist-packages/setuptools/build_meta.py", line 161, in prepare_metadata_for_build_wheel
        self.run_setup()
      File "/usr/local/lib/python3.7/dist-packages/setuptools/build_meta.py", line 254, in run_setup
        self).run_setup(setup_script=setup_script)
      File "/usr/local/lib/python3.7/dist-packages/setuptools/build_meta.py", line 145, in run_setup
        exec(compile(code, __file__, 'exec'), locals())
      File "setup.py", line 100, in <module>
        "tests = kivymd.tools.packaging.pyinstaller:get_pyinstaller_tests",
      File "/usr/local/lib/python3.7/dist-packages/setuptools/__init__.py", line 153, in setup
        return distutils.core.setup(**attrs)
      File "/usr/lib/python3.7/distutils/core.py", line 148, in setup
        dist.run_commands()
      File "/usr/lib/python3.7/distutils/dist.py", line 966, in run_commands
        self.run_command(cmd)
      File "/usr/lib/python3.7/distutils/dist.py", line 985, in run_command
        cmd_obj.run()
      File "/usr/local/lib/python3.7/dist-packages/setuptools/command/dist_info.py", line 36, in run
        bdist_wheel.egg2dist(egg_info.egg_info, dist_info_dir)
      File "/usr/local/lib/python3.7/dist-packages/wheel/bdist_wheel.py", line 408, in egg2dist
        shutil.copy(license, os.path.join(self.distinfo_dir, license_filename))
      File "/usr/lib/python3.7/posixpath.py", line 80, in join
        a = os.fspath(a)
    TypeError: expected str, bytes or os.PathLike object, not NoneType
    ----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python3 /usr/local/lib/python3.7/dist-packages/pip/_vendor/pep517/_in_process.py prepare_metadata_for_build_wheel /tmp/tmpdb_2q5o4 Check the logs for full command output.

【问题讨论】:

    标签: python python-3.x pip kivy kivymd


    【解决方案1】:

    使用pip install git+https://github.com/kivymd/KivyMD.git@master。它应该可以正常工作

    【讨论】:

      【解决方案2】:

      您可以从here 下载 KivyMD 的 whl 文件。

      然后使用pip install whlFilePath/kivymd-0.104.1-py3-none-any.whl进行安装。

      狐狸示例:pip install E:/kivymd-0.104.1-py3-none-any.whl

      【讨论】:

      • pip install E:/kivymd-0.104.1-py3-none-any.whl 它将安装kivymd 的稳定版本,但我需要开发版本(master)
      • 请仔细阅读我的回答,E:/是whl文件路径,从我的链接你可以下载whl到任何地方,如果你下载文件到D磁盘,那么你需要使用pip install D:/kivymd-0.104.1-py3-none-any.whl 安装,pip install kivymd 将在线安装稳定版本,但pip install E:/kivymd-0.104.1-py3-none-any.whl 从本地存在的文件安装。
      • 你说的文件存储我可以理解,但是需要kivymd的开发版(master)不稳定版(1.104.1)。
      • 你可以看到pip.pypa.io/en/stable/reference/pip_install/#install-pre我不明白你为什么需要开发版。
      猜你喜欢
      • 1970-01-01
      • 2015-01-10
      • 2022-08-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-01
      • 2014-12-11
      • 1970-01-01
      相关资源
      最近更新 更多