gpt4 book ai didi

python - pip 可以列出它的二元轮吗?

转载 作者:太空狗 更新时间:2023-10-30 01:05:13 25 4
gpt4 key购买 nike

我正在尝试解决两个 python 安装之间的行为差​​异,这两个安装通常是确定性的并且安装了相同的 python pip 包。

我怀疑不同的 .so 文件。为什么要查看安装了哪些二进制文件 binary wheels pip,以及针对哪些架构?

更新——


% pip 显示
姓名:西皮
版本:1.0.0rc1
摘要:SciPy:Python 的科学图书馆
主页:https://www.scipy.org
作者:SciPy 开发者
作者邮箱:scipy-dev@python.org
许可证:BSD
位置:/usr/local/lib/python2.7/dist-packages
要求: NumPy

上面的包依赖于必须编译的 libopenblas 之类的东西。我不确定 pip 是否使用系统安装,或在 pip 安装期间编译 BLAS,或用作 i386 或 i686 的 BLAS 预编译版本——谁知道呢。

以上案例我有:

/usr/local/lib/python2.7/dist-packages/scipy/.libs/libopenblasp-r0-39a31c03.2.18.so

我想看看哪个软件包在不同系统中安装的 .sos 有差异。

最佳答案

信息就在那里,但您必须在 dist-info 和/或 egg-info 子目录中四处寻找才能找到它。

  • 二进制发行版在其元数据子目录中包含一个 RECORD 文件。
  • 源代码分发在其元数据子目录中包含一个 installed-files.txt 文件。

RECORD 文件是(路径、散列、大小)的 csv 行,如 PEP-376 中所述。 .来自 egg 的较旧的 installed-files.txt 只是文件名,您必须手动统计这些文件。

作为一个简单的例子,我有我的包的源代码和二进制分发版 copyingmock可用 PyPI .安装二进制发行版(pip install copyingmock):

$ pip show --files copyingmock
Name: copyingmock
Version: 0.1
Summary: A subclass of MagicMock that copies the arguments
Home-page: https://github.com/wimglenn/copyingmock
Author: Wim Glenn
Author-email: hey@wimglenn.com
License: MIT
Location: /tmp/blah/venv/lib/python3.6/site-packages
Requires:
Files:
__pycache__/copyingmock.cpython-36.pyc
copyingmock-0.1.dist-info/DESCRIPTION.rst
copyingmock-0.1.dist-info/INSTALLER
copyingmock-0.1.dist-info/LICENSE.txt
copyingmock-0.1.dist-info/METADATA
copyingmock-0.1.dist-info/RECORD
copyingmock-0.1.dist-info/WHEEL
copyingmock-0.1.dist-info/metadata.json
copyingmock-0.1.dist-info/top_level.txt
copyingmock.py
$ cat venv/lib/python3.6/site-packages/copyingmock-0.1.dist-info/RECORD
copyingmock.py,sha256=DoLAuaS7KqGT87BIlD93G1M7q9bNWgHYu1m1TZP1D1g,345
copyingmock-0.1.dist-info/DESCRIPTION.rst,sha256=L_0CS_8XNYgAVfq3tj3GZEYg_9vML9nDP-FUU37GIbs,1541
copyingmock-0.1.dist-info/LICENSE.txt,sha256=sDdX5cBRRpk3rmZ8hbYEfAUIYRdDqrlXmChOUkqf62o,1066
copyingmock-0.1.dist-info/METADATA,sha256=bKJ5RXwvj0rGrg22p4K91WiJoLM5MqLHYqlpWYWUhPU,2031
copyingmock-0.1.dist-info/RECORD,,
copyingmock-0.1.dist-info/WHEEL,sha256=5wvfB7GvgZAbKBSE9uX9Zbi6LCL-_KgezgHblXhCRnM,113
copyingmock-0.1.dist-info/metadata.json,sha256=SLtuqq4tUGr0A2h4hQnZEdPIm_4MrvcunLzP-_1I7Qc,677
copyingmock-0.1.dist-info/top_level.txt,sha256=X3FsY_0npOxR5rKvOJ-b2rdiNfSiIivwVKN4JgY7cac,12
copyingmock-0.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
__pycache__/copyingmock.cpython-36.pyc,,

然后强制使用源代码分发重新安装(pip uninstall copyingmock 然后 pip install --no-binary=copyingmock copyingmock):

$ pip show --files copyingmock
Name: copyingmock
Version: 0.1
Summary: A subclass of MagicMock that copies the arguments
Home-page: https://github.com/wimglenn/copyingmock
Author: Wim Glenn
Author-email: hey@wimglenn.com
License: MIT
Location: /tmp/blah/venv/lib/python3.6/site-packages
Requires:
Files:
__pycache__/copyingmock.cpython-36.pyc
copyingmock-0.1-py3.6.egg-info/PKG-INFO
copyingmock-0.1-py3.6.egg-info/SOURCES.txt
copyingmock-0.1-py3.6.egg-info/dependency_links.txt
copyingmock-0.1-py3.6.egg-info/top_level.txt
copyingmock.py
$ cat venv/lib/python3.6/site-packages/copyingmock-0.1-py3.6.egg-info/installed-files.txt
../copyingmock.py
../__pycache__/copyingmock.cpython-36.pyc
dependency_links.txt
PKG-INFO
top_level.txt
SOURCES.txt

关于python - pip 可以列出它的二元轮吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46779616/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com