如何通过setup.py安装Python程序包,具体取决于可能无法在用户计算机上安装的C二进制文件

时间:2019-07-17 12:40:10

标签: python pip setup.py

我希望我在标题中正确解释了问题,但这是我的情况:

在工作场所,我们的笔记本电脑没有管理员权限,但是我需要使用使用C二进制文件的Python库。当我尝试通过pip安装软件包时,由于无法安装二进制文件或在任何地方找到它们而失败。我通过下载.whl文件并手动安装来解决此问题。

现在,我正在尝试打包我的应用程序,以便可以从pip(从我们的内部Gitlab服务器)安装它。尝试此操作时,它显然失败的原因与您不能首先通过pip进行安装的原因相同。

我正在尝试为我的setup.py找到一种方法来检测它是否失败,如果可以,只需转到找到.whl的URL并手动进行安装。这是一个坏主意吗?如果没有,我该怎么办?我尝试将对setup()的调用包装在try块中,这样我就可以查看它是否引发了异常,但似乎没有显示任何内容:

# package requires
with open(os.path.join(here, "requirements.txt")) as f:
    install_requires = f.readlines()

# setup config
try:
    setup(
        name=about['__title__'],
        version=about['__version__'],
        description=about['__description__'],
        long_description=readme + '\n\n' + history,
        author=about['__author__'],
        author_email=about['__author_email__'],
        url=about['__url__'],
        license=about['__license__'],
        platforms=['any'],
        packages=["<redacted>"],
        package_data={'': ['LICENSE']},
        include_package_data=True,
        python_requires=">=3.7",
        install_requires=install_requires,
        tests_require=tests_requires,
        classifiers=(
            'Development Status :: 1 - Beta',
            'Topic :: Scientific/Engineering :: GIS',
            'Intended Audience :: Developers',
            'Intended Audience :: Science/Research',
            'Natural Language :: English',
            'License :: GPLv3',
            'Operating System :: OS Independent',
            'Programming Language :: Python',
            'Programming Language :: Python :: 3.7'
        )
except Exception as e:
    print(e)

0 个答案:

没有答案