如何最简单地构建用于嵌入式分发的Python26.zip?

3
我正在为一款现有的C++应用程序使用Python作为插件脚本语言。正如Python文档所述,我可以嵌入Python解释器。在初始化和去初始化解释器时,一切都能够成功运行。然而,我遇到了一个问题,那就是我无法将标准库打包成zip文件(通常是PythonXX.zip,对应于Python dll的版本号),因此无法加载模块。
最简单的方法是什么,可以在优化的字节码编译后将整个标准库打包成zip文件?我正在寻找一个简单的脚本或命令来帮助我完成这项任务,因为我真的不想手动完成这项工作。
有什么好的想法吗?
谢谢!

1
你找到答案了吗?如果你能在这里发布一下就太好了。 - sambha
2个回答

2
我可能会使用setuptools来创建一个egg(基本上是Python的Java JAR包)。setup.py可能看起来像这样:
from setuptools import setup, find_packages

setup(
    name='python26_stdlib',
    package_dir = {'' : '/path/to/python/lib/directory'},
    packages = find_packages(),
    #any other metadata
)

你可以使用命令 python setup.py bdist_egg 来运行它。一旦你有了 egg 文件,你可以将其添加到 Python path 中或者使用 setuptools 安装它。我相信这也会为你处理 pycs 的生成。 注意:我不会在我的系统 Python 目录上使用它。你可能需要为此设置一个 虚拟环境

2

写一个脚本应该不会太难。查看zipfile.PyZipFile类及其writepy方法。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接