问题标签 [distutils]

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 投票
3 回答
1636 浏览

python - 设置python模块的权限(python setup install)

我正在为要安装在异构资源集上的 python 模块配置基于 distutils 的 setup.py。由于异质性,模块的安装位置在每台主机上并不相同,但 disutils 会选择特定于主机的位置。

我发现使用 disutils 安装模块时没有 o+rx 权限(尽管在运行 setup.py 之前设置了 umask)。一种解决方案是手动更正此问题,但是我想要一种适用于异构安装目标的自动化方法。

例如,有没有办法从 setup.py 中提取安装的结束位置?

还有其他建议吗?

0 投票
1 回答
1152 浏览

c++ - 如何在 Mac OSX 上使用 distutils 编译带有 python C++ 扩展的 OpenGL?

当我尝试它时,我得到:

ImportError:dlopen(/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/cscalelib.so,2):找不到符号:_glBindFramebufferEXT 引用自:/Library/Frameworks/Python.framework /Versions/2.5/lib/python2.5/site-packages/cscalelib.so 预期在:动态查找

我已经在 setup.py 文件中尝试了各种方法。我实际上需要放入什么才能正确链接到OpenGL?我的代码编译得很好,所以没有必要把它放在那里。这是 setup.py

0 投票
1 回答
105 浏览

python - 有没有一种方法可以确定是否要使用 distutils 而不是 setuptools 安装软件包?

我可以查看 setup.py 我想看看它是否是一个 distutils 包。但是在熟悉 python 包管理的过程中,我注意到似乎有不止一种方法可以做到这一点。所以:

如何检查解压缩的包目录或 setup.py 以了解如何构建它?

编辑:当我说“构建”时,我的意思是它会使用 distutils 或 setuptools,还是分发。我正在使用构建。

0 投票
2 回答
3090 浏览

python - 直接用命令名/选项调用distutils'或setuptools'setup()函数,不解析命令行?

我想以稍微不合常规的方式调用 Python 的 distutils 或 setuptools 的 setup() 函数,但我不确定 distutils 是否适用于这种用法。

例如,假设我目前有一个“setup.py”文件,它看起来像这样(从 distutils 文档中逐字删除——setuptools 的用法几乎相同):

通常,要仅为该模块的 RPM 构建 .spec 文件,我可以运行python setup.py bdist_rpm --spec-only,它会解析命令行并调用“bdist_rpm”代码来处理特定于 RPM 的内容。.spec 文件以 './dist' 结尾。

如何更改我的 setup() 调用,使其运行带有“--spec-only”选项的“bdist_rpm”命令,而不解析命令行参数?我可以将命令名称和选项作为参数传递给 setup() 吗?或者我可以手动构建一个命令行,并将其作为参数传递吗?

注意:我已经知道我可以在单独的进程中调用脚本,使用实际的命令行,使用 os.system() 或 subprocess 模块或类似的东西。我试图避免使用任何类型的外部命令调用。我正在专门寻找在当前解释器中运行 setup() 的解决方案。

作为背景,我将一些发布管理 shell 脚本转换为单个 Python 程序。其中一项任务是运行“setup.py”以生成 .spec 文件以进行进一步的预发布测试。将“setup.py”作为外部命令运行,并带有自己的命令行选项,这似乎是一种笨拙的方法,并且会使程序的其余部分复杂化。我觉得可能有一种更 Pythonic 的方式。

0 投票
2 回答
9776 浏览

python - Setuptools 没有为 entry_points 传递参数

我正在为我编写的 Python 脚本使用 setuptools

安装后,我这样做:

就像我正在运行它一样。/like_this

但是,我得到:

看起来 setuptools 没有将我的参数发送给 main() 进行解析(通过 optparse)

这是我的 entry_points 的 setuptools 配置:

有任何想法吗?

0 投票
4 回答
2314 浏览

python - 为什么我不能使用 distutils 在 Python 发行版中包含这些数据文件?

我正在为 Python 项目编写 setup.py 文件,以便分发它。目的是最终创建一个 .egg 文件,但我试图让它首先与 distutils 和常规 .zip 一起工作。

这是一个 Eclipse pydev 项目,我的文件结构是这样的:

到目前为止,这是我的 setup.py 代码:

当我运行它(使用 sdist 作为命令行参数)时,会生成一个包含所有 python 文件的 .zip 文件 - 但不包括配置文件。我以为这段代码:

表示应该将这 3 个指定的配置文件复制到 zip 分发中的“config”目录。为什么这段代码没有完成任何事情?我究竟做错了什么?

(我也尝试过使用配置文件的路径......但似乎没有任何帮助。如果路径不正确/找不到文件,Python 会抛出错误或警告吗?)

0 投票
1 回答
3495 浏览

python - 在 Python 发行版中包含文件的 2 种技术:哪个更好?

我正在将一个小型 Python 项目打包为 zip 或 egg 文件,以便可以分发。我遇到了两种包含项目配置文件的方法,这两种方法似乎都产生了相同的结果。

方法一:

在 setup.py 中包含此代码:

方法二:

在 setup.py 中包含此代码:

然后,创建一个包含以下行的 MANIFEST.in 文件:

这些方法之间有什么区别吗?哪个是首选?我倾向于倾向于第一个,因为那时根本不需要 MANIFEST.in 文件。但是,在第一种方法中,您必须单独指定每个文件,而在第二种方法中,您可以只包含整个文件夹。还有什么我应该考虑的吗?标准做法是什么?

0 投票
1 回答
141 浏览

python - “setup.py”忽略的目录

Selenium setup.py 可以在http://code.google.com/p/selenium/source/browse/trunk/setup.py找到。

运行“python setup.py sdist”时,“firefox/test/py”目录由于某种原因被忽略,尽管它在“package_dir”和“packages”中有所提及。

任何想法为什么它被忽略?

0 投票
2 回答
5920 浏览

python - python distutils 不包括 data_files

我是 distutils 的新手。我试图在包中包含一些数据文件。这是我的代码。

执行后创建的 zip 文件python setup.py sdist不包含 scrapper.db 文件。我在 app 目录中有 scrapper.db 文件..

谢谢您的帮助。

0 投票
5 回答
8522 浏览

python - Python 在 Mac OSX 上找不到 distutils_path

我一直在使用 virtualenv + pip 进行 python 开发。我不确定发生了什么,但突然每当我尝试运行命令行工具或导入库时,我都会收到以下错误消息:

据我所知,Python 试图distutils_path在 Mac OSX 系统版本 Python 中找到,而不是我应该的 virtualenv 版本。

不知道为什么这突然开始发生。也许最近的 OSX 更新?另一种可能是我的硬盘快要死了,所以苹果给了我一个新的并运行了迁移助手。也许有些东西没有正确传输?