dac*_*cox 5 python numpy python-wheel pypiserver
我们目前正在运行我们自己的私有 PyPi 服务器,并上传我们内部 Python 库的轮子以加快安装速度。
我们的许多工具都需要 numpy、scipy、pandas 等。
通过从源代码安装所有依赖项,然后使用,我们为所有依赖项构建了轮子
pip wheel .
Run Code Online (Sandbox Code Playgroud)
它为我们所有的依赖项输出轮子 - 或者我们是这么认为的。
我们发现,当我们从我们的私有 PyPi 安装 numpy 时,它可以作为轮子使用,会发生以下情况。
>>> import numpy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "redacted/lib/python2.7/site-packages/numpy/__init__.py", line 199, in <module>
from . import random
File "redacted/site-packages/numpy/random/__init__.py", line 99, in <module>
from .mtrand import *
ImportError: redacted/lib/python2.7/site-packages/numpy/random/mtrand.so: undefined symbol: PyFPE_jbuf
Run Code Online (Sandbox Code Playgroud)
我很清楚这些轮子没有正确创建。我不清楚的是如何解决这个问题。我们不会将这些分发给公众,仅用于我们的内部工具。
我远不是车轮包装方面的专家,但这是迄今为止我对车轮制造的了解。
对于 OS X 和 Windows,您可以构建二进制轮子并使用它来部署您的软件。
在 Linux 上,这个过程并不总是有效,这是因为许多二进制轮子会尝试使用特定版本的操作系统库 (.so),而这些库在一个发行版之间是不同的,甚至在同一发行版中也是不同的。
这是一些进一步的参考:
归档时间: |
|
查看次数: |
869 次 |
最近记录: |