问题标签 [setuptools]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何让 easy_install 在 setup.py 中执行自定义命令?
除了安装 Python 包(如安装 init.d 脚本、创建目录和文件等)之外,我还希望 setup.py 执行一些自定义操作。我知道我可以自定义 distutils/setuptools 类来执行我自己的操作。我遇到的问题是,当我 cd 到包目录并执行“python setup.py install”时,一切正常,但是当我执行“easy_install mypackage.tar.gz”时,我的自定义类似乎没有被执行。这是我的 setup.py 文件(在同一目录中创建一个空的 myfoobar.py 文件进行测试):
即使我从 distutils 导入“设置”和“安装”,也会发生同样的事情。有什么想法可以让 easy_install 执行我的自定义类吗?
澄清一下,我不想使用任何额外的东西,比如 Buildout 或 Paver。
python - 如何安装设置工具?
我正在尝试安装 setuptools。当我运行“sh setuptools-0.6c9-py2.4.egg”时,我收到以下消息:
权限被拒绝:'/usr/lib/python2.4/site-packages/test-easy-install-26338.write-test'
这是可以预料的,因为我没有系统的 root 权限。我是如何想到创建“虚拟”Python 的。
我下载“virtual-python.py”并使用站点范围的 Python 运行它。它在我的主目录中创建“lib”、“bin”和“include”子目录。在“virtual-python.py”的输出末尾,我看到以下消息:
您现在可以下载 ez_setup.py,然后运行 /home/myname/bin/python ez_setup.py
我下载这个文件并运行它。但是我得到了同样的错误信息:
权限被拒绝:'/usr/lib/python2.4/site-packages/test-easy-install-925.write-test'
好的。我使用“前缀”强制 ez_setup.py 写入本地目录:
然后我得到:
您可以使用此处描述的方法之一设置安装目录以支持“.pth”文件:http://peak.telecommunity.com/EasyInstall.html#custom-installation-locations
所以,我被重定向到我之前读过的同一页面。所以,我不知道现在该怎么办。
我还有另一个提示:
- 您可以将安装目录添加到 PYTHONPATH 环境变量中。(当你运行 Python 并想要使用你正在安装的包时,它也必须在 PYTHONPATH 上。)
但如果我输入:
我仍然得到相同的结果,就好像 Python 没有看到我的环境变量一样。
任何人都可以,请,帮助我吗?
python - 无法让 django-registration 工作(在 Windows 上)
试图将django-registration添加到我的应用程序中。我已经安装了安装工具来使用easy_install。我认为这行得通..
我运行 easy_install django-registation 并且 cmd 提示窗口闪烁,执行某些操作并关闭。我不认为这是一个错误。但是当我查看我的应用程序文件夹时,与 django-registration 没有任何关系。
有谁知道出了什么问题?django-registration 文件应该出现在哪里?
(也用 django-profiles 试过,结果完全一样)
python - 哪个是最 Pythonic:通过包管理器(macports、apt)或通过 pip/easy_install/setuptools 安装 python 模块
通常我倾向于通过包管理器安装东西,用于 unixy 的东西。然而,当我编写了很多 perl 时,我会使用 CPAN、更新版本等等。
一般来说,我曾经通过包管理器安装系统的东西,通过它自己的包管理器(gem/easy_install|pip/cpan)安装语言的东西
现在主要使用python,我想知道最佳实践是什么?
python - “setup.py 上传”失败并显示“上传失败 (401):您必须被识别才能编辑包信息”
跑步时..
..我得到以下输出:
它提示保存登录详细信息,尽管~/.pypirc
已经包含此信息。然后它无法为我拥有的包上传文件,并且具有完全的写入权限。
python - easy_install -f 与 easy_install -i
这与我不久前问的这个问题有关。
最终的结果是我希望能够安装我的包“identity.model”和所有依赖项。像这样...
无论出于何种原因,运行此 easy_install 都会访问我根据此信息布置的主页
我的 index.html
如果我跑...
它确实找到了我的包和我放在那里的 repoze.what.plugins.config,因为它是一个依赖项。但是,当它去获取 tw.forms(托管在 pypi 上的外部依赖项)时,它以失败告终,因为它只搜索了http://eggs.sadphaeton.com
显然我误解了“规范”。有人知道诀窍是什么吗?
python - 如果没有安装 setuptools 怎么办?
我只是在学习setup.py
为我的项目编写文件的艺术。我看到有很多关于 的讨论setuptools
,这应该优于 distutils。虽然有一件事我不明白,而且我没有在我读过的任何教程中看到它:如果 setuptools 没有安装怎么办?我知道它不是标准库的一部分,所以你怎么能假设想要安装你的程序的人会安装它呢?
python - Python 应用分发跨平台
我想在 OSX 上(使用 py2app)和 Debian 包分发我的应用程序。
我的应用程序的结构如下:
我的 setup.py 看起来像:
然后,在 b.py (这是在 OSX 上):
我得到:
所以基本上,mod2 无法访问 mod1。在 Linux 上没有问题,因为 python 模块 'app' 全局安装在 /usr/shared/pyshared 中。但在 OSX 上,该应用程序显然是由 py2app 构建的独立 .app 东西。我想知道我是否完全错误地处理了这个问题,在 OSX 上分发 Python 应用程序时是否有任何最佳实践?
编辑:我也在 b.py 中尝试过这样的 hack:
Edit2:似乎与这个如何在 Python 中进行相对导入有关?
python - 使用 setuptools/distribute 打包资源
我正在开发一个 Python egg,它有几个 .txt 依赖项(它们是由 egg 本身生成文件的模板),我正在努力将这些依赖项复制到 .txt 文件site-packages
中setup.py install
。根据distribute
文档...
我的包的文件系统:
在 setup.py 中:
在我的包裹中:
...配置和文件系统的这种组合应该导致file1.txt
并且file2.txt
可以通过pkg_resources.resource_string
. 不幸的是,它们没有被复制到site-packages
. setup.py install
我错过了什么?
谢谢!
python - 使用 Distribute 包含包数据
我正在尝试将 Distribute 用于我的项目的setup.py
. 我希望它包含包文件夹中的所有文件,它们是文本和图像文件,但当然不是 .pyc 文件。我读到文件应该由 CVS 和 SVN 跟踪,或者应该有一个MAINFEST.in
.
所以:
我既不使用 CVS 也不使用 SVN,我使用 git。我知道可以为 git 写一个插件,也许有人有,但我不会使用一些我不知道它是否会被维护和支持的插件。此外,git 跟踪的不仅仅是源文件夹,repo 还包括其他不应打包在分发中的文件。
我认为 Distribute 的好处之一是不必处理
MANIFEST.in
文件。我真的必须吗?如果是这样,我在哪里可以看到指南?我从来没有写过MANIFEST.in
.
有没有更好的解决方案?