【问题标题】:Does Cython compile imported modules as part of the binary?Cython 是否将导入的模块编译为二进制文件的一部分?
【发布时间】:2018-11-21 08:03:28
【问题描述】:

我现在正在阅读 cython,我想知道 cython 是否将导入的模块编译为可执行文件的一部分,如果您仍然需要在目标机器上安装模块来运行 cython 二进制文件。

【问题讨论】:

标签: python cython


【解决方案1】:

Cython 模块的“接口”保留在 Python 级别。当您在 Cython 中导入模块时,该模块仅在代码的 Python 级别可用,并使用常规 Python 导入机制。

所以:

  1. Cython 不会“编译”依赖项。
  2. 您需要在目标机器上安装依赖项。

对于“Cython 级别”代码,包括“cimporting”模块的问题,Cython 使用等效的 C 头文件(.pxd 声明文件)和动态加载的库来访问外部代码。 .so 文件(适用于 Linux,适用于 windows 的 DLL 和适用于 mac 的 dylib)需要存在于目标计算机上。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-25
    • 1970-01-01
    • 1970-01-01
    • 2022-01-24
    • 2016-01-09
    • 2021-04-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多