python 用py2exe 打包程序报错 !!! 如何打包依赖?求打救.....[抓狂] 15
Python代码中引用到cx_Oracle,pymssql这两个类库,不知道是不是setup.py配置有误的问题setup.py的全部几行代码:fromdistutils...
Python代码中引用 到cx_Oracle,pymssql 这两个类库, 不知道是不是setup.py配置有误的问题
setup.py 的全部几行代码 :
from distutils.core import setup
import py2exe
setup(console=['Data.py'], py_modules = ['pymssql','cx_Oracle'])
然后 使用 : python setup.py py2exe 命令生成exe 时出现如下错误:
The following modules appear to be missing
['IronPythonConsole', 'System', 'System.Windows.Forms.Clipboard', '_scproxy', 'c
lr', 'console', 'modes.editingmodes', 'pyreadline.keysyms.make_KeyPress', 'pyrea
dline.keysyms.make_KeyPress_from_keydescr', 'pyreadline.keysyms.make_keyinfo', '
pyreadline.keysyms.make_keysym', 'startup']
*** binary dependencies ***
Your executable(s) also depend on these dlls which are not included,
you may or may not need to distribute them.
Make sure you have the license if you distribute any of them, and
make sure you don't distribute files belonging to the operating system.
ole32.dll - C:\Python27\DLLs\ole32.dll
OLEAUT32.dll - C:\Windows\system32\OLEAUT32.dll
USER32.dll - C:\Windows\system32\USER32.dll
PSAPI.DLL - C:\Windows\system32\PSAPI.DLL
SHELL32.dll - C:\Windows\system32\SHELL32.dll
ntdll.dll - C:\Windows\system32\ntdll.dll
VERSION.dll - C:\Windows\system32\VERSION.dll
KERNEL32.dll - C:\Windows\system32\KERNEL32.dll
OLEAUT32.dll - C:\Python27\DLLs\OLEAUT32.dll
GDI32.dll - C:\Python27\DLLs\GDI32.dll
WS2_32.dll - C:\Python27\DLLs\WS2_32.dll ................................
用cmd 运行 上一步生成的 Data.exe 文件时 出现如下错误。
一定是打包依赖的时候出错了,但我应该怎么做呢?折腾了一整个晚上,求大神解答..... 展开
setup.py 的全部几行代码 :
from distutils.core import setup
import py2exe
setup(console=['Data.py'], py_modules = ['pymssql','cx_Oracle'])
然后 使用 : python setup.py py2exe 命令生成exe 时出现如下错误:
The following modules appear to be missing
['IronPythonConsole', 'System', 'System.Windows.Forms.Clipboard', '_scproxy', 'c
lr', 'console', 'modes.editingmodes', 'pyreadline.keysyms.make_KeyPress', 'pyrea
dline.keysyms.make_KeyPress_from_keydescr', 'pyreadline.keysyms.make_keyinfo', '
pyreadline.keysyms.make_keysym', 'startup']
*** binary dependencies ***
Your executable(s) also depend on these dlls which are not included,
you may or may not need to distribute them.
Make sure you have the license if you distribute any of them, and
make sure you don't distribute files belonging to the operating system.
ole32.dll - C:\Python27\DLLs\ole32.dll
OLEAUT32.dll - C:\Windows\system32\OLEAUT32.dll
USER32.dll - C:\Windows\system32\USER32.dll
PSAPI.DLL - C:\Windows\system32\PSAPI.DLL
SHELL32.dll - C:\Windows\system32\SHELL32.dll
ntdll.dll - C:\Windows\system32\ntdll.dll
VERSION.dll - C:\Windows\system32\VERSION.dll
KERNEL32.dll - C:\Windows\system32\KERNEL32.dll
OLEAUT32.dll - C:\Python27\DLLs\OLEAUT32.dll
GDI32.dll - C:\Python27\DLLs\GDI32.dll
WS2_32.dll - C:\Python27\DLLs\WS2_32.dll ................................
用cmd 运行 上一步生成的 Data.exe 文件时 出现如下错误。
一定是打包依赖的时候出错了,但我应该怎么做呢?折腾了一整个晚上,求大神解答..... 展开
1个回答
展开全部
在你自己机器上运行时,确保上面说的dll在你的文件路径下就行了。system32目录一定在你路径下,把 python27\dlls 下的几个文件复制到 exe 文件目录下试试吧。再不行,改用 pyinstaller 打包吧。我现在放弃 py2exe 改用这个了,感觉比 py2exe 好。话说 py2exe 也好久没更新了好像。
更多追问追答
追问
追答
到 www. pyinstaller. org 下载支持 python2.7 的最新 2.1 版。
使用 setup.py install 安装,加入 pyinstaller.exe 路径(python目录下的 scripts 目录)
使用 pyinstaller -F -w -i xxx.ico xxx.py (或 修改完 spec 文件后,xxx.spec)
xxx 是你的程序的启动执行的python文件名。
以前有个小 bug 需要手工修改一下 xxx.spec 文件,现在不知道修正没。碰到了再说吧。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询