我正在使用 pyinstaller 将我的 .py 代码编译成 exe。在某些系统中,我的 exe 要求运行 microsoft visual c++ redistributable package。
最佳答案
Python 本身并不依赖于 MSVC 的存在。你可以下载一个可移植的 Python 包,它会在你复制它的任何地方运行。这些是embeddable
来自 https://www.python.org/downloads/windows/
但是,内部带有 native 扩展代码的 Python 模块可以在多个级别上依赖 MSVC:
.pyd
文件),则实际上是 .dll
, 它可能取决于其他 .dll
-s,取决于它的构建方式setup.py
”,并且此过程需要在系统上安装 C 编译器 PyInstaller 是另一回事。首先,它有一个您可能想要阅读的文档。例如页面 What PyInstaller Does and How It Does It清楚地直接回答了您的至少一个问题:
Bundling to One File
PyInstaller can bundle your script and all its dependencies into a single executable named myscript (
myscript.exe
in Windows).
还有一个已知兼容性和已知兼容性问题的软件包列表:https://github.com/pyinstaller/pyinstaller/wiki/Supported-Packages ,根据您需要的软件包,您可能会发现它很有用。
虽然它不是重复的,但这个问题:How to package a linked DLL and a pyd file into one self contained pyd file? (以及它链接的另一个)可能会很有趣。
关于python - python是否依赖于microsoft visual c++ redistributable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58049482/