跳转到主要内容

便携式Linux Python

项目描述

Plipy是一套用于构建和管理便携式Linux Python环境的工具。它旨在让plipy环境能够在今天使用的绝大多数主要Linux发行版上运行,以及许多多年以前就应该淘汰的Linux发行版。它类似于便携式Python,但目标平台是Linux而不是Windows。

其核心技术是

  • 使用autopackage构建工具隐藏较新的glibc符号,这样编译后的库可以在较老的Linux系统上无需修改即可使用。

  • 将所有共享库的rpath设置为合理值,这样无论plipy环境位于何处,其依赖项都可以找到。

构建plipy环境

要构建plipy环境,您至少需要一个较新的gcc版本和“chrpath”工具。使用以下命令初始化一个新的plipy环境:

#> plipy PATH/TO/ENV init

这将构建并设置一个基本的Python安装(目前为python 2.6.5),包括setuptools和pip。大多数Python包可以直接使用pip安装。对于需要更复杂环境的包,plipy提供了一个“食谱”,您可以使用例如以下命令安装它们:

#> plipy PATH/TO/ENV install py_wxpython

这将构建并安装一个经过修改以更便携的wxPython版本。

使用plipy环境

在plipy环境的顶层,有三个名为“python”、“plipy”和“shell”的shell脚本。这些脚本设置了一些相关的环境变量,然后加载适当的命令。

以下是如何使用pip安装第三方包的示例

#>
#> PATH/TO/ENV/shell
plippy(ENV):$
plippy(ENV):$ pip install esky
...lots of output as esky is installed...
plippy(ENV):$
plippy(ENV):$ <ctrl-D>
#>

它有什么好处?

为什么,它可以用于所有像便携式Python一样好的用途,只是在Linux上而不是Windows上!将其用作方便的便携式脚本或测试环境,或者运行多个Python版本。

它特别适用的一点(实际上,这也是它被创建的原因)是构建Linux上的冻结Python应用程序。Plipy附带cx-freeze和bbfreeze的修补版本,可以构建具有与plipy环境本身相同便携性的独立应用程序 - 这意味着它们应该能够在从古老的Red Hat发行版到最新的Ubuntu发行版的所有环境中运行。

参考文献

项目详情


由以下支持

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误记录StatusPageStatusPage状态页