Nuitka 是一个用 Python 编写的 Python 项目,可以将 Python 编译为 C, 也就是说,Python 编译器能够生成独立的二进制文件,不需要执行它的系统上的 Python 运行时。
努伊特卡 因尽可能保持与 Python 生态系统的最大兼容性而脱颖而出,这确保了 NumPy 等第三方库可靠地工作。此外,Nuitka 致力于尽可能提高编译后的 Python 程序的性能,同时保持强大的整体兼容性。
然而,值得注意的是,性能改进并不能得到保证,并且可能会根据工作负载而有很大差异。某些程序可能不会出现显着的性能改进。因此,作为一般规则,建议不要依赖 Nuitka 作为性能增强解决方案,而应将其作为可靠的打包工具。
Nuitka 支持 Python 版本 2.6、2.7 或 3.4、3.5、3.6、3.7、3.8、3.9、3.10、3.11,并支持 Linux、FreeBSD、NetBSD、macOS X 和 Windows,以及 x86、x86_64 架构 (amd64)和ARM。
Nuitka 2.0 有什么新功能?
目前,努伊特卡 在其版本2.0中 这是最近推出的,它强调他们已经纳入 包配置的各种改进和功能, 它允许您在编译期间查询已安装软件包的值并使用这些值来定义后端。对配置中变量的支持简化了以前需要连接插件的许多标准任务。
此外,它已被添加 支持用户定义的参数来影响每个包的配置。 可以使用新函数读取这些参数 获取参数 并用于选择模块的行为。例如,可以配置一个参数来禁用 Numba JIT 或 Torch JIT。
选项“被引入–include-onefile-external-data» 指定在配置中定义的数据文件模板,但在单文件模式下编译时必须与可执行文件分开提供。同样,选项“–cf-保护» 在GCC中配置CFI(控制流完整性)保护模式,防止违反正常执行顺序(控制流)。
, 其他变化 脱颖而出:
- 添加了对模块决策的支持,允许用户在每个包的基础上影响 Nuitka 配置。
- 添加了对 Nuitka 包配置的支持,使查询已安装的包值变得更加容易。
- 检测太大而无法避免违反大小限制的已编译可执行文件。
- 通过对 Nuitka-Watch 的更改,改进了报告和建立公关的能力。
- 已经实现了循环类型分析,将来将用于实现选择性优化。
- 添加了优化以加快非共享和转义变量的处理速度。
- 针对没有损坏名称的私有函数(如 Qt 插槽)的解决方法。
- 修复使用 Nuitka 时的 pip 数据包检测。
- 改进了 pydantic 的延迟加载解析器。
- 添加了各种包的数据文件,例如 pyocd 和 cmsis_pack_manager。
- 修复以在运行时正确处理扩展规范。
- 避免某些方法执行期间失败的解决方案。
- 改进了从命令行包含包的功能。
- 针对Android、Windows、Debian等平台的具体解决方案。
- 改进了与不同 Python 版本和操作系统的兼容性。
最后,如果你是 有兴趣了解更多,您可以查看详细信息 在下面的链接中。
如何在 Linux 上安装 Nuitka?
对于那些有兴趣在自己的系统上安装 Nuitka 的人来说,您应该知道安装很简单,您只需要安装 Python 和 pip 包管理系统。
要安装 Nuitka 只需运行以下命令:
pip install nuitka
关于这个编译器的使用,可以查阅用户手册: 以下链接。