当我尝试将 pyinstaller 与“ KivyMD Kitchen Sink ”(--one file --debug --clean)一起使用时,我得到了这个:
File "kivymd\theming.py", line 17, in <module>
File "site-packages\kivy\core\text\__init__.py", line 248, in register
# and pass it in context.config token
OSError: File C:\Users\username\AppData\Local\Temp\_MEI92522\kivymd\fonts/Roboto-Regular.ttfs not found
Failed to execute script main
我尝试使用:
if hasattr(sys, '_MEIPASS'):
os.chdir(sys._MEIPASS)
在 main.py 但没有任何改变。
此外,我将 Roboto-Regular.ttf 复制到 main.exe 的目录,但没有成功。
Pyinstaller 与其他 Kivy 应用程序配合得很好。
更新:
我找到了一个临时解决方案。我使用 pyinstaller 的--onedir
命令与 main.py 而不是 main.spec 文件:
wine pyinstaller --onedir main.py
然后,我将 kivymd 文件夹 (../site-packages/kivyMD) 复制到我的应用程序的文件夹中,应用程序启动时没有错误。
无论如何,我想冻结应用程序,有什么建议--onefile
吗?谢谢!