在Windows上安装Python软件前检查所有依赖项

0 投票
1 回答
510 浏览
提问于 2025-04-16 17:08

我用“python setup.py bdist_wininst”命令制作了一个单独的exe文件,用来在Windows上安装我的软件。但是,当我用这个exe文件安装软件时,它只检查系统上是否安装了Python,并不会检查其他依赖项,比如pyqt和pycurl库。我该如何修改这个setup文件,让生成的exe文件在安装之前先检查Windows系统中是否存在所有依赖项,如果没有的话,就先安装所有需要的库呢?

setup.py文件

setup(name='XYZ',
      version='1.0',
      description='application',
      author='Arjun Jain',
      author_email='xxxxx',
      url='xxxx',
      download_url='xxxx',
      packages=packages,
      data_files = data_files,
      scripts = ['xyz'],
      classifiers = ['Development Status :: 5 - Production/Stable',
                   'Intended Audience :: Developers',
                   'License :: GNU',
                   'Operating System :: OS Independent',
                   'Programming Language :: Python',
                   'Programming Language :: Python :: 2.6',
                   'Programming Language :: Python :: 2.7',
                   'Programming Language :: PyQt :: 4.6',
                   ],
)

1 个回答

1

使用 install_requires 这个参数来告诉 setuptools.setup() 你的包需要哪些其他的包。

注意:根据这个 StackOverflow 的问题 是否可以在 setuptools 的 setup.py 中要求 PyQt?,如果用户的 Python 环境里没有某个包,setuptools 是无法自动为他们安装这个包的。不过,从 pypi 上能找到的包,通常都可以通过这种方式安装。

撰写回答