Python 正在停止setup.py作为egg安装

Python 正在停止setup.py作为egg安装,python,pydev,setuptools,easy-install,Python,Pydev,Setuptools,Easy Install,如何阻止setup.py将包安装为egg?或者更好的是,如何将包安装为egg sudo python setup.py安装 原因是PyDev对egg格式的包相当挑剔。。。我目前感兴趣的软件包是boto 更新:我找到了暴力的方法: sudo easy_install -m boto cd path/to/boto-xyz.egg sudo mv boto .. sudo rm -rf boto-xyz.egg 几年后,同样的问题出现了,人们对公认的答案并不满意。在Google群组中找到: pus

如何阻止
setup.py
将包安装为egg?或者更好的是,如何将包安装为
egg

sudo python setup.py安装

原因是
PyDev
egg
格式的包相当挑剔。。。我目前感兴趣的软件包是
boto

更新:我找到了暴力的方法:

sudo easy_install -m boto
cd path/to/boto-xyz.egg
sudo mv boto ..
sudo rm -rf boto-xyz.egg

几年后,同样的问题出现了,人们对公认的答案并不满意。在Google群组中找到:

pushd /path/to/my/package/ 
python setup.py sdist 
popd 
pip install /path/to/my/package/dist/package-1.0.tar.gz
说明:
python setup.py sdist
创建的源代码发行版自然不是*.egg!生成的归档文件(.tar.gz在unix中,.zip在windows中)可以像任何带pip的远程模块一样安装。它甚至不需要额外的参数!这将产生所需的完全可浏览模块。

解决方案1:

我觉得我错过了一些微妙或重要的东西(在问题被问到几年后遇到这一页,却没有找到令人满意的答案),但以下几点对我来说很好:

python setup.py install --single-version-externally-managed --root=/
压缩的
*.egg
文件是的发明(虽然我理解创建它们的原因,但我并不十分喜欢它们),而且由于
setup.py
脚本使用(可能需要)setuptools,因此包最终被安装为压缩的
*.egg
文件

解决方案2:

上面的命令行选项由pip(Python包管理器)使用,它提示了另一种方法来阻止包作为压缩的
*。egg
文件安装:只需使用pip!如果您有一个包含
setup.py
脚本的目录,则可以在该目录中运行以下命令以使用pip安装软件包:

pip install .

这是对上面的
setup.py
命令的改进,因为它跟踪额外的元数据(例如,跟踪已安装的文件可以更可靠地删除)。

使用
pusd-popd
vs
cd-
有什么好处?还是仅仅是味道?我只是参考。我想说这只是味道(flavor:Linux),它不涉及包含编译过的二进制代码的包。我认为它并没有完全解决这个问题。哈!我已经使用pip多年了,不知道如何安装pip。是可能的。:-)这一点对于那些下载并进行源代码安装的人来说尤其重要,他们使用
python setup.py install
进行源代码安装,通常会进行
egg
安装。
pip安装。
也适用于Windows 10,解决了我从github下载repo并在安装时将其放入
egg
的问题在
virtualenv
中,我对
setuptools.setup
。。。在切换回
distils.core.setup
后,一切都会再次正常工作。谢谢你的提示!