问题标签 [distutils2]

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.

0 投票
4 回答
2953 浏览

python - 如何在 Gnome(使用 distutils 或 setuptools)中分发 Python 包的“.desktop”文件和图标?

目前我正在使用自动工具来构建/安装和打包我的项目,但我真的很想转向感觉更“pythonic”的东西。

我的项目由两个脚本、一个模块、两个 glade GUI 描述和两个 .desktop 文件组成。它目前是一个纯 python 项目,尽管这可能很快就会改变。

查看 setuptools 我可以轻松了解如何处理除 .desktop 文件之外的所有内容;它们必须最终位于特定目录中,以便 Gnome 可以找到它们。

开始使用 distuils/setuptools 是个好主意吗?

0 投票
1 回答
166 浏览

python - 在 distutils2 中使用鼻子测试

我正在尝试将其nosetests用作基于distutils2(使用setup.cfg文件而不是“旧”setup.py脚本)的构建/发布链的一部分。

不幸的是,当我发出:

我得到:

...但是,如果我nosetests从同一个位置发出,我可以看到我的所有测试都在执行。我的目录结构如下:

setup.cfg我的文件的相关部分包含:

我究竟做错了什么?官方文档在这一点上并不完美......

0 投票
1 回答
520 浏览

python - 如何升级 Python 以及已安装的软件包?

如果我用 Python 2.6 安装了几个包(例如 using easy_install),然后我想升级到 Python 2.7,有没有办法升级 Python,然后自动“导入”所有已安装的包?还是必须重新安装?

两个相关的问题:(1)如果一个包安装在 Python 2.6 包目录中,将它导入到PYTHONPATH较新的 Python(如 Python 2.7)是否合法,或者必须使用 Python 2.7 重新安装所有包?(2) 如果我使用easy_install,我如何告诉它使用较新的 Python?例如 2.7 而不是 2.6?还是我应该easy_install使用 Python 2.7 重新安装来执行此操作?谢谢。

0 投票
3 回答
2476 浏览

python - 分发不带 .py 扩展名的 Python 脚本

scripts如果我正在用 Python 编写一个包进行分发,并且我在of中放置了一些被视为可执行文件的脚本setup.py,是否有一种标准方法可以使它们没有 *.py 扩展名?只制作没有 .py 扩展名的文件就足够了吗,还是需要任何额外的东西?是否会从文件名中删除 .py 会破坏与setup.py/distutils 等 Python 工具相关的任何功能?谢谢。

0 投票
1 回答
296 浏览

python - 我如何告诉 distutils 子目录中的包?

我有一个setup.py我正在处理的项目的文件,该文件需要引入几个尚未(尚未)在奶酪店发布的第三方包。其中之一是来自这个 git 存储库的“spine”和“pyguts”模块:

https://github.com/terrysimons/spine-python

通常我可以通过在 setup.py 文件中指定以下项目来从 gitgub 安装东西(为清楚起见,省略了几行):

但是,这仅适用于PyTMXsetup.py文件位于存储库的根目录中。

spine如果我尝试为和存储库做类似的事情pyguts,就像这样:

然后 distutils 在我运行时抱怨python setup.py install

setup.py当文件不在包存储库的根目录中时,如何让 distutils 安装包?

0 投票
2 回答
16197 浏览

distutils - 从命令行上传时如何覆盖pypi包?

我想在某些情况下自动化上传过程错误,python setup.py upload因为 pypi 服务器已经上传了保存版本。

如何强制它从脚本上传(我知道我可以使用 Web 界面删除旧变体)。

0 投票
1 回答
66 浏览

python - 如何避免使用 distutils 覆盖以前的软件包安装

我有一个使用 distutils 的 python 包。我想将 setup.py 配置为执行以下任一操作:

  • 检测先前安装的软件包版本并引发错误
  • 提议在继续安装之前删除以前安装的版本

有什么提示吗?可能需要 distutils.command.install 的自定义子类,但文档有点简洁。

0 投票
2 回答
3890 浏览

python - 在 setup.py 中自动将 protobuf 规范编译到 python 类中

我有一个 python 项目,它使用 google protobufs 作为通过网络进行通信的消息格式。protoc使用该程序直接从 .proto 文件生成 python 文件。如何setup.py为项目配置我的文件,以便它自动调用protoc命令?

0 投票
1 回答
912 浏览

python - python 2中的distutils字节编译错误

我有一个可以使用基于setup.py命令的 distutils 安装在 python 3 中的包

但在 python 2 中给出了一个SyntaxError。有没有办法跳过这个特定模块的字节编译或尝试捕获SyntaxError异常(使用 try/except pass 不起作用)?我想将包安装在 python 2 中,包中的这个模块不起作用并不重要。

0 投票
3 回答
2547 浏览

python - 只有在 setup.py 中可能时才编译可选的 cython 扩展

我有一个在 python 中完全实现的 python 模块。(出于便携性原因。)

一小部分的实现已在 cython 模块中复制。尽可能提高性能。

我知道如何.c使用distutils. 但是,如果机器没有安装编译器,我怀疑即使模块在纯 python 模式下仍然可用,安装也会失败。

如果可能的话,有没有办法编译.c模块,但如果无法编译,可以优雅地失败并在没有它的情况下安装?