我可以在`python setup.py install`依赖解析中用`pip`替代`easy_install`吗?
运行python setup.py install
这个命令会自动安装在requires=[]
里列出的包,使用的是easy_install
工具。那么,我该怎么做才能让它用pip
来安装呢?
3 个回答
7
如果你真的想用 python setup.py install
这个命令来安装东西,你可以试试下面这个方法:
from setuptools import setup, find_packages
from setuptools.command.install import install as InstallCommand
class Install(InstallCommand):
""" Customized setuptools install command which uses pip. """
def run(self, *args, **kwargs):
import pip
pip.main(['install', '.'])
InstallCommand.run(self, *args, **kwargs)
setup(
name='your_project',
version='0.0.1a',
cmdclass={
'install': Install,
},
packages=find_packages(),
install_requires=['simplejson']
)
116
你可以先用 python setup.py sdist
命令来打包一个文件,然后再用 pip install
来安装它。还有一种方法是用 pip install -e .
,这个命令的作用类似于 python setup.py develop
,可以让你在开发的时候直接使用这个文件。
174
当然可以。你可以从一个压缩包(tarball)或者文件夹中安装一个软件包,无论这个文件是在网上还是在你的电脑上。比如说:
从网上的压缩包安装
pip install https://pypi.python.org/packages/source/r/requests/requests-2.3.0.tar.gz
从本地压缩包安装
wget https://pypi.python.org/packages/source/r/requests/requests-2.3.0.tar.gz
pip install requests-2.3.0.tar.gz
从本地文件夹安装
tar -zxvf requests-2.3.0.tar.gz
cd requests-2.3.0
pip install .
你可以删除 requests-2.3.0
这个文件夹。
从本地文件夹安装(可编辑模式)
pip install -e .
这种方式会把软件包安装在 可编辑模式 下。你对代码所做的任何修改都会立即在系统中生效。如果你是这个软件包的开发者,想要测试一些改动,这种方式非常有用。不过,这也意味着你不能随便删除这个文件夹,否则安装就会出问题。