尝试学习cx-freeze。我有一个python程序,我正在尝试冻结到exe。
我使用PySerial,无论我如何尝试包含win32,似乎都无济于事。我使用Python3.2和win7。
我在网上搜索过,其他人也有同样的问题,但似乎没有解决方案。但我怀疑没有人在使用PySerial的cx_freezing上取得成功。
我完全被卡住了。任何帮助都将不胜感激
错误:
Traceback (most recent call last):
File "C:\Python32\lib\site-packages\
7, in <module>
exec(code, m.__dict__)
File "snapper.py", line 8, in
File "C:\Python32\lib\site-packages\
from serial.serialwin32 import *
File "C:\Python32\lib\site-packages\
e>
from serial import win32
ImportError: cannot import name win32Setup.py:
from cx_Freeze import setup,Executable
includefiles = ['caml.pkl', 'seql.pkl']
includes = ['DataBase', 'serial.win32']
excludes = ['Tkinter']
packages = []
setup(
name = 'Setup',
version = '0.1',
description = 'Snapper configuration utility',
author = 'LST',
author_email = 'info@-.com',
options = {'build_exe': {'excludes':excludes,'packages':packages,'include_files':includefiles}},
executables = [Executable('snapper.py')]
)你知道下一步该怎么做吗?提前感谢
我试着做一个盲目导入:
if False:
import serial.win32没有运气..。
也许我看错了方向……
发布于 2012-01-04 20:42:03
好了问题解决了。
您需要使用包来强制cx_Freeze包含serial.win32 (不是" include ")
下面的代码行工作:
packages = ['serial.win32'] 给我自己和其他人的备注:一定要检查dist文件夹中是否包含实际包含的包。我不知道为什么cx_Freeze一开始没有包含所有的包,但这对我来说很有效。
发布于 2012-01-04 06:17:08
如果你可以使用不同的工具冻结你的程序,PyInstaller说它支持PySerial。
https://stackoverflow.com/questions/8717125
复制相似问题