代码之家  ›  专栏  ›  技术社区  ›  John Smith

使用Python或其他嵌入式脚本语言部署应用程序

  •  18
  • John Smith  · 技术社区  · 17 年前

    我正在考虑使用Python作为 嵌入式脚本语言 在一个用英语写的爱好项目中 C++ . 我不想依赖于单独安装的Python发行版。Python文档似乎非常清楚一般用法,但我找不到一个明确的答案。

    以下是我衡量不同语言的标准:

    • 漂亮的语言:)
    • 不会产生巨大的安装包

    我想问题应该是: 如何使用程序的安装程序部署我自己的python库+标准库,这样平台是否已经安装了python就不重要了?

    还有一个澄清。我不需要关于链接C和Python代码的细节的信息。

    4 回复  |  直到 17 年前
        1
  •  18
  •   James Emerton    17 年前

    将应用程序链接到python库(Windows上的pythonXX.lib),并将以下内容添加到main()函数中。

    Py_NoSiteFlag = 1;  // Disable importing site.py
    Py_Initialize();    // Create a python interpreter
    

    将所需的python标准库位放入一个zip文件(称为pythonXX.zip)中,并将其和pythonXX.dll放在分发的可执行文件旁边。查看zipfile模块中的PyZipFile。

        2
  •  8
  •   gimel    17 年前

    嵌入过程完全记录在案: Embedding Python in Another Application 这些文档建议在几个层次上进行嵌入,选择最适合您需求的内容。

    可以在源发行版的demo/embed/目录中找到嵌入Python的简单演示。

    The demo is here ,应该能够从发行版生成。

    • 超高层次嵌入:概述
    • 纯嵌入
    • 扩展嵌入式Python

    从标准库中,您可以选择没有太多依赖关系的组件。

        3
  •  5
  •   Ali Afshar    17 年前

        4
  •  0
  •   Jon Cage    17 年前

    如果您正在寻找一种简单地部署Python应用程序的方法,您可以使用 Py2Exe . 这将允许你的应用程序拥有它所需要的所有依赖项,而不必担心用户机器上已经安装或没有安装什么。

    [Edit]如果Py2Exe不适合嵌入式应用程序,您能让安装程序检查相关文件并下载/安装缺少的任何内容吗?[/Edit]

    [Edit2]可以 Elmer 你在找什么?[Edit2]