创建一个私有的、独立的python环境的最佳方法是什么?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (41)

我想创建一个私有的,独立的Python环境,它不会链接回系统库(virtualenv的方式),还包括它自己版本的Python包的标准C / C ++库,它们只是这些库的包装器(例如PIL和libjpeg)。

我已经看到了将整个运行时分布在目录中的商业应用程序,所以我知道它可以完成。

问题是,有没有一种工具可以使这件事变得容易?Virtualenv几乎让我在那里,尤其是。使用--no-site-packages和--relocatable标志,但它不能解决标准“C”库的问题。我希望能够构建一个PIL,例如,它使用捆绑的私有版本的libjpeg和libpng

有什么建议么?

提问于
用户回答回答于

尝试cx_Freeze或py2exe。它们用于打包Python应用程序以使其可重新分发,并包含它所依赖的所有包/库。

用户回答回答于

这听起来像你真正想要的是一种将特定的Python安装和脚本捆绑到可分发包中的方法。你可以执行以下操作:

  • 下载,编译并安装python到项目目录(即python-toolchain)
  • 创建一个前缀脚本(工具链),将采取一个相对路径和更新PATHPYTHONPATHLD_LIBRARY_PATH动态。
#!/bin/sh

# If your clever you can determine install directory dynamically
prefix='install directory'
toolchain=$prefix/python-toolchain
export PATH=$toolchain/bin:$prefix/app/bin:$PATH
export LD_LIBRARY_PATH=$toolchain/lib:$LD_LIBRARY_PATH
export PYTHONPATH=$prefix/app/lib:$PYTHONPATH
exec $*

  • 你的应用程序脚本中的cookie可能如下所示:
#!... /install directory / toolchain python

打印“Hello World!”
  • 你现在应该能够像这样分配一个目录:
    • package/
      • python-toolchain/
      • app/

所属标签

可能回答问题的人

  • 学生

    3 粉丝476 提问7 回答
  • uncle_light

    5 粉丝518 提问6 回答
  • o o

    4 粉丝494 提问5 回答
  • 富有想象力的人

    3 粉丝0 提问5 回答

扫码关注云+社区

领取腾讯云代金券