Python Pyinstaller不';我不能很好地使用ImageTk和Tkinter
我正试图使用pyinstaller来构建我一直在开发的程序,但后来我遇到了二进制文件的问题。这是我的程序 首先我运行了Python Pyinstaller不';我不能很好地使用ImageTk和Tkinter,python,tkinter,python-imaging-library,pyinstaller,Python,Tkinter,Python Imaging Library,Pyinstaller,我正试图使用pyinstaller来构建我一直在开发的程序,但后来我遇到了二进制文件的问题。这是我的程序 首先我运行了pyinstall test.py,然后我使用/dist/main/test运行二进制文件,但是我得到了这个错误,这是正常运行脚本时没有得到的(例如python3 test.py) 我是否错误地使用了pyinstaller,或者是否存在其他问题?我知道这已经有一个多月的历史了,但我发现自己正在努力解决这个问题,而且它似乎不想以任何建议的方式工作。 鉴于其他人将来可能会遇到这种情况
pyinstall test.py
,然后我使用/dist/main/test
运行二进制文件,但是我得到了这个错误,这是正常运行脚本时没有得到的(例如python3 test.py
)
我是否错误地使用了pyinstaller,或者是否存在其他问题?我知道这已经有一个多月的历史了,但我发现自己正在努力解决这个问题,而且它似乎不想以任何建议的方式工作。
鉴于其他人将来可能会遇到这种情况,下面是我如何为此使用热修复程序的。
首次使用PyInstaller创建可执行文件后,将创建一个规范文件。
此文件类似于以下内容(对于--onefile): 我所做的只是使用
datas
以这种方式将PIL复制到文件中:
datas=[('/usr/local/lib/python3.7/dist-packages/PIL/','PIL'),],
现在一切都正常运转,直到我有时间找到更好的解决方案
请记住,如果将PyInstaller用于
main_file.py
(在本例中),规范文件将被覆盖。相反,应该使用pyinstaller main\u file.spec我知道这已经有一个多月的历史了,但我发现自己正在努力解决这个问题,因为它似乎不想以任何建议的方式工作。
鉴于其他人将来可能会遇到这种情况,下面是我如何为此使用热修复程序的。
首次使用PyInstaller创建可执行文件后,将创建一个规范文件。
此文件类似于以下内容(对于--onefile):
我所做的只是使用datas
以这种方式将PIL复制到文件中:
datas=[('/usr/local/lib/python3.7/dist-packages/PIL/','PIL'),],
现在一切都正常运转,直到我有时间找到更好的解决方案
请记住,如果将PyInstaller用于main_file.py
(在本例中),规范文件将被覆盖。相反,应该使用pyinstaller main_file.spec
。我现在晚了2个月,但为了添加一个更简单的解决方案,我设法让它工作,添加了几个隐藏导入:
hiddenimports=['PIL', 'PIL._imagingtk', 'PIL._tkinter_finder']
我现在晚了2个月,但为了添加一个更简单的解决方案,我通过添加两个隐藏导入成功地实现了这一点:
hiddenimports=['PIL', 'PIL._imagingtk', 'PIL._tkinter_finder']
hiddenimports=['PIL', 'PIL._imagingtk', 'PIL._tkinter_finder']