【发布时间】:2021-09-20 14:59:18
【问题描述】:
我最近完成了一个我已经从事了一段时间的项目。我应该在课堂上运行在 linux 上的智能板上展示我的工作。考虑到我无法下载它的模块,因为我没有 sudo 权限,也没有互联网。所以为了解决这个问题,我决定使用 pyinstaller 构建它。在我的设备上似乎一切正常,但是当我再次检查虚拟框时,会弹出此错误。
Traceback (most recent call last):
File "main.py", line 4, in <module>
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
File "PyInstaller/loader/pyimod03_importers.py", line 540, in exec_module
File "matplotlib/__init__.py", line 923, in <module>
File "matplotlib/__init__.py", line 608, in matplotlib_fname
RuntimeError: Could not find matplotlibrc file; your Matplotlib install is broken
[8025] Failed to execute script main
那么我该如何构建它,使其适用于所有设备而无需安装任何模块
【问题讨论】:
-
大概
matplotlib/__init__.py", line 608正在尝试打开一个未捆绑到您的 exe 中的文件。尝试检查该代码以找出它在哪里寻找?假设你有 matplotlib 的源代码,你可以临时添加一些调试打印输出,以明确它假设哪个文件和哪个文件夹?然后看看您是否可以将此文件显式添加到您的 pyinstaller 构建中,请参阅文档pyinstaller.readthedocs.io/en/stable/… -
或者,只要稍微搜索一下 pyinstaller error matplotlibrc 就会找到这个stackoverflow.com/questions/62701684/…。请注意,您当然可以按照相同的思路进行更多搜索。
-
如果您使用该答案,请不要忘记投票。
标签: python python-3.x linux ubuntu pyinstaller