PY2EXE:如何输出“*_D.PYD”文件(调试)并使用 MSVCR80D.DLL?
我的应用程序的调试配置是基于以下内容构建的:
PYTHON25_D.DLL
MSVCR80D.DLL
我们在应用程序中使用Python的.PYD文件。其中一些.PYD文件是通过PY2EXE将.PY文件转换而来的。
当我对MYSCRIPT.PY运行PY2EXE时,我得到了以下的.PYD文件和依赖项:
MYSCRIPT.PYD
PYTHON25.DLL
MSVCR71.DLL
KERNEL32.DLL
我想要的是调试版本,它需要与我的应用程序使用的相同C运行时库(MSVCR80D.DLL)构建。
我该如何将MYSCRIPT.PY转换成:
MYSCRIPT_D.PYD <-- debug version of .PYD end with "_D"
PYTHON25_D.DLL <-- debug version of Python
MSVCR80D.DLL <-- ver 8.0, Debug
KERNEL32.DLL
这该怎么做呢?
2 个回答
0
这玩意儿不行,因为 MSVCR80D 是一种并行运行时。
你要么告诉用户直接安装微软的运行时,要么手动复制那些清单文件。另外,MSVCR71.DLL 这个文件没有被选中。它是给 Python 用的,所以你可能还是需要保留它。
0
请注意,微软的调试用dll文件是不能随便分发的——你不能把它们给别人。不过,如果你使用调试版本的Python和调试编译版本的py2exe,py2exe会正确地收集所有dll的调试版本。