可以列出它的二进制轮子吗?

use*_*956 5 python pip

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

我怀疑不同的.so文件.有没有什么可以看到哪些二进制二进制轮子pip已安装,以及哪些架构?

更新 -

% pip show Name: scipy Version: 1.0.0rc1 Summary: SciPy: Scientific Library for Python Home-page: https://www.scipy.org Author: SciPy Developers Author-email: scipy-dev@python.org License: BSD Location: /usr/local/lib/python2.7/dist-packages Requires: numpy

上面的包依赖于像libopenblas这样必须编译的东西.我不知道如果PIP所使用的系统安装,或编译的BLAS画中画在安装过程中,或用作BLAS的预编译版本的I386,或i686的 - 谁知道.

以上情况我有:

/usr/local/lib/python2.7/dist-packages/scipy/.libs/libopenblasp-r0-39a31c03.2.18.so
Run Code Online (Sandbox Code Playgroud)

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

wim*_*wim 5

信息在那里,但你必须在dist-info和/或egg-info子目录中挖掘才能找到它.

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

RECORD文件是作为记录在的CSV线(路径,散列,大小)PEP-376.installed-files.txt鸡蛋中较旧的只是文件名,您必须手动统计这些文件.

举个简单的例子,我在PyPI上提供了包copymock的源代码和二进制发行版.使用二进制分发安装():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,,
Run Code Online (Sandbox Code Playgroud)

然后强制重新安装源代码分发(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
Run Code Online (Sandbox Code Playgroud)