写了一个小工具 在 PyCharm 中运行一切正常 但是使用 pyinstaller -F xx.py 输出exe 文件后报错
https://www.freesion.com/article/7787146554/?%ra=card
简单粗暴,我就用的这个
打包之后,在脚本文件平级的目录下,应该会出现一个后缀名为.spec的文件,该文件内容大致如下所示。你可以分别尝试在hiddenimports列表或excludes列表中添加tkinter项,保存文件后,运行 pyinstaller file_name.spec,重新打包试试看。file_name是你的.spec文件名。估计hiddenimports有效。
# -*- mode: python ; coding: utf-8 -*-
block_cipher = None
a = Analysis(['pyCalculator_4.py'],
pathex=['D:\\CSDN\\Column\\wx'],
binaries=[],
datas=[],
hiddenimports=[],
hookspath=[],
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
noarchive=False)
pyz = PYZ(a.pure, a.zipped_data,
cipher=block_cipher)
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
[],
name='pyCalculator_4',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
upx_exclude=[],
runtime_tmpdir=None,
console=False , icon='calculator.ico')
报错说没有tkinter的模块,因为python打包需要的模块需要在Python.exe路径下找,而不是pycharm所以你需要到cmd命令行去pip tkinter
参考下这个,大体的原因是,有些模块是隐藏导入的,但是pyinstaller打包时并未指定,所以执行时找不到此模块,而你这里应该是tkinter这个模块为指定。
提示很明显,就是打包的时候缺少包
你pycharm配置的python路径和你pyinstaller所在的路径,不是同一个。 简单说,你两个使用的不是同一个python版本
大致意思就是说没有tkinter的模块,python打包需要模块,发现当前文件下路径中没有模块,一种可能就是因为pyinstall路径下没有,还有一种可能是版本不匹配。
希望对题主有所帮助!
打包失败了,没有在相应的目录下打包
报错少了这个模块,运行框cmd命令行去pip tkinter
tkinter模块没有打包进去,或者打包进去了但是访问路径不正确
你的python版本是低于3.0的吧?
1 你这个打包脚步写的太单薄了
2 py installer 做的非常好 , 不要怀疑它
3 linux win7 下 我都打包过
可以私聊我 尽量详细一点
打赏没必要
应该是打包的时候没有重新编译导致缺少相关包导致的,重新编译试试