指点成金-最美分享吧

登录

python setup.py bdist_wheel 报错的处理办法

佚名 举报

篇首语:本文由小编为大家整理,主要介绍了python setup.py bdist_wheel 报错的处理办法相关的知识,希望对你有一定的参考价值。

参考技术A 错误描述:在虚拟环境里安装 tornado 报错:error: invalid command "bdist_wheel"
多半是setuptools版本不正确或者你的环境中没有安装wheel:

执行之后 果然 没有报错了。

python 从setup.json读取的示例setup.py

# -*- coding: utf-8 -*-## setup.py#SETUP_JSON = "setup.json"import ioimport jsonimport osimport sysfrom shutil import rmtreefrom setuptools import setup, find_packages, CommandHERE = os.path.abspath(os.path.dirname(__file__))def load_json(path, here=HERE):    """"""    with io.open(os.path.join(here, path)) as f:        return json.load(f)def get_long_description(path, default="", here=HERE):    """"""    long_description = default    with io.open(os.path.join(here, path), encoding="utf-8") as f:        long_description = "
" + f.read()    return long_descriptiondef get_version(path, key="__version__", here=HERE):    """"""    version = {}    with open(os.path.join(here, path)) as f:        exec(f.read(), version)    return version[key]class Upload(Command):    """"""    name = "upload"    description = "Build and publish the package."    user_options = []    @staticmethod    def status(s):        """Prints things in bold."""        print("33[1m{0}33[0m".format(s))    def initialize_options(self):        """"""    def finalize_options(self):        """"""    def run(self):        """"""        try:            self.status("Removing previous builds…")            rmtree(os.path.join(HERE, "dist"))        except OSError:            pass        self.status("Building Source and Wheel (universal) distribution...")        os.system(f"{sys.executable} setup.py sdist bdist_wheel --universal")        self.status("Uploading the package to PyPI via Twine...")        os.system("twine upload --repository-url https://upload.pypi.org/legacy/ dist/*")        sys.exit()if __name__ == "__main__":    about = load_json(SETUP_JSON)    about["version"] = get_version(about["version_file"])    del about["version_file"]    about["long_description"] = get_long_description(about["long_description_file"])    del about["long_description_file"]    if "exclude" in about["packages"]:        about["packages"] = find_packages(exclude=tuple(about["packages"]["exclude"]))    setup(cmdclass={Upload.name: Upload}, **about)

以上是关于python setup.py bdist_wheel 报错的处理办法的主要内容,如果未能解决你的问题,请参考以下文章