到目前为止,我们通过我们的自定义pypi服务器安装了psutil。安装没有gcc的psutil
现在我们有一个新的环境,我们不应该安装gcc。
现在旧的方式(点安装过程中启动gcc)不再工作。
上下文:
- Linux服务器
- 蟒蛇里面的virtualenv
- 需要从我们的数据中心(不包括互联网接入)
我看到这些替代方案部署的所有代码:
RPM
创建一个RPM。既然我们已经用--system-site-packages
运行我们的virtualenv这个工程。这会强制服务器上的所有virtualenvs使用psutil
的相同版本。但这不是什么大问题。
Wheel
我从来没有使用过。
冻结
使用像cx_freeze
的工具。我从来没有这样做过。
其他解决方案?
我想还有其他的,也许更好的方法来解决这个问题。
背景psutil
只是在这种情况下的例子。其他包含c-extensions的python软件包也会出现同样的问题。想象一下,这里还没有RPM。
我敢肯定,我只是用一个轮这种情况。然后,您必须为每个目标架构构建一个轮子(Gohlke的[用于Windows的轮子](http://www.lfd.uci.edu/~gohlke/pythonlibs/)的一个很好的例子 - 这是一个令人信服的理由这是大多数Windows用户没有正确的设置来编译扩展名C)。鉴于你所提供的赏金 - 是否有什么特别让你觉得编译车轮,然后使用例如目标机器上的“pip install”('.whl')可能会对您造成问题? –
看起来这可能是http://stackoverflow.com/questions/31380578/how-to-avoid-building-c-library-with-my-python-package的欺骗 –