Windows 在py2exe生成的可执行文件中嵌入pyd文件
我最近开始试验cython和py2exe,看看是否可以将一些python项目转换为独立的windows二进制文件。到目前为止,我已经成功地使用zipfile=None选项将纯python代码转换为包含所有自定义python库的exe。py2exe生成的“dist”目录非常干净,我的所有库都直接嵌入到exe中 但是,在使用Cython将库转换为.pyd文件后,我遇到了一点问题。当我使用.pyd文件而不是原始的.py文件创建新的可执行文件时,py2exe拒绝将.pyd文件包含在可执行文件中,而是将它们放在exe的目录之外。这些库与以前完全相同,只是编译成.pyd格式 这是我的py2exe setup.pyWindows 在py2exe生成的可执行文件中嵌入pyd文件,windows,cython,py2exe,pyd,Windows,Cython,Py2exe,Pyd,我最近开始试验cython和py2exe,看看是否可以将一些python项目转换为独立的windows二进制文件。到目前为止,我已经成功地使用zipfile=None选项将纯python代码转换为包含所有自定义python库的exe。py2exe生成的“dist”目录非常干净,我的所有库都直接嵌入到exe中 但是,在使用Cython将库转换为.pyd文件后,我遇到了一点问题。当我使用.pyd文件而不是原始的.py文件创建新的可执行文件时,py2exe拒绝将.pyd文件包含在可执行文件中,而是将它
from distutils.core import setup
import glob
import py2exe
setup_dict = dict(
windows=[
{
"script": "myscript.py",
"icon_resources": [(1, "myicon.ico")]
}
],
data_files=[
("folder1", ["folder1/file1", "folder1/file2"]),
("folder2", ["folder2/file1", "folder2/file2"])
],
options = {
"py2exe":{
"includes": ['mylibrary1, 'mylibrary2', 'mylibrary3'],
"excludes": ['excludedlib1', 'excludedlib2'],
"dll_excludes": ['crypt32.dll']
}
},
zipfile = None
)
# have to call it twice in order to workaround icon bug
setup(**setup_dict)
setup(**setup_dict)
没有办法在我的可执行文件中包含.pyd以避免目录混乱吗?这对于纯python版本的库来说不是问题
如果有一个方法包括他们,请让我知道
另外请注意,我运行的是64位windows,我不能使用py2exe的“捆绑文件”选项,因为它只能在32位系统上工作。我很确定它不会工作。我认为py2exe依赖于从zip文件导入的标准功能,这不适用于编译的模块:我很确定它不会工作。我认为py2exe依赖于从zip文件导入的标准功能,这不适用于编译模块: