我有一个setup.py文件的项目,我正在工作,需要拉几个第三方包,但还没有(还)发布在奶酪店。其中之一是这个git存储库中的“脊柱”和“py肠”模块:
https://github.com/terrysimons/spine-python
通常,我可以通过在setup.py文件中指定以下项来安装gitgub中的内容(为了清楚起见,省略了几行代码):
#! /usr/bin/python
# Encoding: UTF-8
from setuptools import setup, find_packages
setup(
# More stuff in here...
dependency_links=[
'https://github.com/bitcraft/PyTMX/archive/master.zip#egg=PyTMX',
],
install_requires=[
'PyTMX',
],
)但是,这仅仅是因为PyTMX在存储库的根目录中有它的setup.py文件。
如果我尝试为spine和pyguts存储库执行类似的操作,如下所示:
#! /usr/bin/python
# Encoding: UTF-8
from setuptools import setup, find_packages
__version__ = '0.0.1'
setup(
dependency_links=[
'https://github.com/bitcraft/PyTMX/archive/master.zip#egg=PyTMX',
'https://github.com/terrysimons/spine-python/archive/master.zip#egg=spine',
],
install_requires=[
'PyTMX',
'spine',
],
)当我运行python setup.py install时,distutils会抱怨
Searching for spine
Best match: spine [unknown version]
Downloading https://github.com/terrysimons/spine-python/archive/master.zip#egg=spine
Processing master.zip
error: Couldn't find a setup script in /tmp/easy_install-OXsH6T/master.zip当setup.py 文件不在包存储库的根目录中时,如何获得distutils来安装包?
发布于 2015-11-30 08:23:46
据我所知,这方面的方法是将模块作为子目录包括在包中,而不是安装它们。
显然,这意味着您将无法直接从模块外部访问它们。尽管如此,您还是可以使用import my_module.my_submodule
当它们准备与主模块分离时,只需为它们制作新的包即可。
https://stackoverflow.com/questions/20023136
复制相似问题