0
我製作了一個GUI應用程序,它在其中使用了潛意識。然後我試着用PyInstaller編譯程序。當我運行exe文件,它給了我下面的錯誤: -如何修復pyinstaller中no dbm clone發現的錯誤
Traceback (most recent call last):
File "main.py", line 375, in <module>
File "main.py", line 144, in __init__
File "site-packages\dogpile\cache\region.py", line 237, in configure
File "site-packages\dogpile\cache\backends\file.py", line 158, in __init__
File "site-packages\dogpile\cache\backends\file.py", line 182, in _init_dbm_file
File "dbm\__init__.py", line 75, in open
ImportError: no dbm clone found; tried ['dbm.gnu', 'dbm.ndbm', 'dbm.dumb']
Failed to execute script main
這個我試過明確導入DBM在我的應用程序像後: - import dbm
。但是這也給出了同樣的錯誤。我想試試import dbm.gnu , dbm.ndbm , dbm.dumb
。 這給出了另一個錯誤,如下所示: -
Traceback (most recent call last):
File "main.py", line 3, in <module>
File "c:\program files\python35\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 389, in load_module
exec(bytecode, module.__dict__)
File "userinterface.py", line 312, in <module>
File "c:\program files\python35\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 389, in load_module
exec(bytecode, module.__dict__)
File "main.py", line 9, in <module>
File "c:\program files\python35\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 389, in load_module
exec(bytecode, module.__dict__)
File "dbm\ndbm.py", line 3, in <module>
ImportError: No module named '_dbm'
Failed to execute script main
一些谷歌搜索,我發現它從dbm.gdbm使用_dbm包。所以而不是import dbm.gnu , dbm.ndbm , dbm.dumb
,我用import dbm.dumb
。
令人驚訝的是,這樣做開始我的申請。但是,潛意識現在沒有找到任何字幕。所以現在完全沒用。
我做錯了什麼。什麼是解決這個問題的正確方法。在編譯時,我也試過給--hidden-import dbm
沒有運氣。
這裏是我使用使用pyinstaller編譯命令: -
pyinstaller main.py --hidden-import dbm --hidden-import dogpile.cache.backends.file --additional-hooks-dir=. --add-data guessit;guessit --add-data babelfish;babelfish -i vid2.ico -n Subtitler
我將是任何線索感激或幫助:)