私のPython GUIアプリは完全に動作しますが、実行可能ファイルを作成しようとすると、pyinstaller (3.3.dev0+483c819) コマンドで試しました:
pyinstaller gui_app.py
次の問題が発生します。
7699 INFO: Loading module hook "hook-wx.lib.pubsub.py"...
Traceback (most recent call last):
File "<string>", line 41, in <module>
File "<string>", line 36, in walk_packages
File "<string>", line 20, in walk_packages
File "c:\python27\lib\site-packages\wx-3.0-msw\wx\lib\pubsub\core\arg1\__init__.py", line 16, in <module>
raise RuntimeError(msg)
RuntimeError: Should not import this directly, used by pubsub.core if applicable
8006 WARNING: Hidden import "wx.lib.pubsub.core.publisher" not found!
8008 WARNING: Hidden import "wx.lib.pubsub.core.listenerimpl" not found!
8009 WARNING: Hidden import "wx.lib.pubsub.core.publishermixin" not found!
8009 WARNING: Hidden import "wx.lib.pubsub.core.datamsg" not found!
8009 WARNING: Hidden import "wx.lib.pubsub.core.topicargspecimpl" not found!
8009 WARNING: Hidden import "wx.lib.pubsub.core.topicmgrimpl" not found!
実行可能ファイルは「正常に」作成されましたが、起動すると次のエラーが表示されます。
Traceback (most recent call last):
File "upload_test_run_dynamic_clean.py", line 21, in <module>
from wx.lib.pubsub import pub
File "c:\python27\Lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 389, in load_module
exec(bytecode, module.__dict__)
File "site-packages\wx-3.0-msw\wx\lib\pubsub\pub.py", line 35, in <module>
File "c:\python27\Lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 389, in load_module
exec(bytecode, module.__dict__)
File "site-packages\wx-3.0-msw\wx\lib\pubsub\core\__init__.py", line 45, in <module>
ImportError: No module named publisher
hookspath を追加しようとしましたが、仕様ファイル (wx.lib.pubsub のフックが既に pyinstaller フック フォルダーに存在します) が機能しませんでした。または、何か問題がありました。
wx およびその他のサブモジュールをインポートする順序はありますか。私は自分のコードにこれを持っています
import wx
import wx.lib.pubsub.setuparg1
from wx.lib.pubsub import pub
import wx.lib.agw.pybusyinfo as PBI
from wx.lib.scrolledpanel import ScrolledPanel