Please I need help n solving this problem.
I want to compile a wxpython app in mac OS Tahoe 26.0.1 with pyinstaller But I keep getting this error.
No module named 'wx._msw'
It is shown in the terminal that the app compiled properly, but it doesn't execute. Here is the log of the error I got.
Traceback (most recent call last):
File "<string>", line 1, in <module>
import wx.lib.activex
File "/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/wx/lib/activex.py", line 32, in <module>
import wx.msw
File "/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/wx/msw.py", line 10, in <module>
from ._msw import *
ModuleNotFoundError: No module named 'wx._msw'
9376 INFO: Analyzing hidden import 'wx.lib.activexwrapper'
9378 INFO: Processing pre-safe-import-module hook 'hook-win32com.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/_pyinstaller_hooks_contrib/pre_safe_import_module'
Below is my pyinstaller file.
# -*- mode: python ; coding: utf-8 -*-
import os
from PyInstaller.utils.hooks import collect_submodules
# Collect wxPython submodules (helps avoid missing import errors)
hiddenimports = collect_submodules('wx')
a = Analysis(
['app.py'],
pathex=[os.getcwd()],
binaries=[],
datas=[
('static', 'static'),
('templates', 'templates'),
('gui', 'gui'),
('logic', 'logic'),
],
hiddenimports=hiddenimports,
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=[],
noarchive=False,
)
pyz = PYZ(a.pure)
# Step 1: Create an EXE first (even on macOS)
exe = EXE(
pyz,
a.scripts,
a.binaries,
a.datas,
[],
name='Bible Display Software',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
console=False,
icon='bible_display_software.icns',
disable_windowed_traceback=False,
argv_emulation=True,
)
# Step 2: Wrap the EXE into a .app bundle
app = BUNDLE(
exe,
name='Bible Display Software.app',
icon='bible_display_software.icns',
bundle_identifier='com.oluwatosin.bds',
info_plist={
'NSHighResolutionCapable': 'True',
'CFBundleDisplayName': 'Bible Display Software',
'CFBundleShortVersionString': '1.0.0',
'CFBundleVersion': '1.0.0',
'CFBundleName': 'Bible Display Software',
'NSHumanReadableCopyright': '© 2025 Oluwatosin Durodola. All rights reserved.',
},
)
Below is the full log of the error I am seeing.
usage: pyinstaller [-h] [-v] [-D] [-F] [--specpath DIR] [-n NAME]
[--contents-directory CONTENTS_DIRECTORY]
[--add-data SOURCE:DEST] [--add-binary SOURCE:DEST]
[-p DIR] [--hidden-import MODULENAME]
[--collect-submodules MODULENAME]
[--collect-data MODULENAME] [--collect-binaries MODULENAME]
[--collect-all MODULENAME] [--copy-metadata PACKAGENAME]
[--recursive-copy-metadata PACKAGENAME]
[--additional-hooks-dir HOOKSPATH]
[--runtime-hook RUNTIME_HOOKS] [--exclude-module EXCLUDES]
[--splash IMAGE_FILE]
[-d {all,imports,bootloader,noarchive}] [--optimize LEVEL]
[--python-option PYTHON_OPTION] [-s] [--noupx]
[--upx-exclude FILE] [-c] [-w]
[--hide-console {minimize-early,hide-early,minimize-late,hide-late}]
[-i <FILE.ico or FILE.exe,ID or FILE.icns or Image or "NONE">]
[--disable-windowed-traceback] [--version-file FILE]
[--manifest <FILE or XML>] [-m <FILE or XML>] [-r RESOURCE]
[--uac-admin] [--uac-uiaccess] [--argv-emulation]
[--osx-bundle-identifier BUNDLE_IDENTIFIER]
[--target-architecture ARCH] [--codesign-identity IDENTITY]
[--osx-entitlements-file FILENAME] [--runtime-tmpdir PATH]
[--bootloader-ignore-signals] [--distpath DIR]
[--workpath WORKPATH] [-y] [--upx-dir UPX_DIR] [--clean]
[--log-level LEVEL]
scriptname [scriptname ...]
pyinstaller: error: unrecognized arguments: build dist
(venv) oluwatosin@OluwatosinsMini bds % rm -rf build dist
(venv) oluwatosin@OluwatosinsMini bds % pyinstaller mac.spec
50 INFO: PyInstaller: 6.16.0, contrib hooks: 2025.8
50 INFO: Python: 3.13.7
57 INFO: Platform: macOS-26.0.1-arm64-arm-64bit-Mach-O
57 INFO: Python environment: /Users/oluwatosin/Documents/code/work/personal/bds/venv
/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/wx/lib/pubsub/__init__.py:23: wxPyDeprecationWarning: wx.lib.pubsub has been deprecated, please migrate your code to use pypubsub, available on PyPI.
warnings.warn('wx.lib.pubsub has been deprecated, please migrate your '
76 WARNING: Failed to collect submodules for 'wx.lib.pubsub.core.kwargs' because importing 'wx.lib.pubsub.core.kwargs' raised: RuntimeError: Should not import this directly, used by pubsub.core if applicable
271 INFO: Module search paths (PYTHONPATH):
['/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python313.zip',
'/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13',
'/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/lib-dynload',
'/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages',
'/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/setuptools/_vendor',
'/Users/oluwatosin/Documents/code/work/personal/bds',
'/Users/oluwatosin/Documents/code/work/personal/bds']
384 INFO: Appending 'datas' from .spec
386 INFO: checking Analysis
386 INFO: Building Analysis because Analysis-00.toc is non existent
386 INFO: Looking for Python shared library...
388 INFO: Using Python shared library: /opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/Python
388 INFO: Running Analysis Analysis-00.toc
388 INFO: Target bytecode optimization level: 0
388 INFO: Initializing module dependency graph...
389 INFO: Initializing module graph hook caches...
394 INFO: Analyzing modules for base_library.zip ...
749 INFO: Processing standard module hook 'hook-encodings.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
1123 INFO: Processing standard module hook 'hook-heapq.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
2092 INFO: Processing standard module hook 'hook-pickle.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
3042 INFO: Caching module dependency graph...
3066 INFO: Analyzing /Users/oluwatosin/Documents/code/work/personal/bds/app.py
3156 INFO: Processing pre-safe-import-module hook 'hook-typing_extensions.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/pre_safe_import_module'
3156 INFO: SetuptoolsInfo: initializing cached setuptools info...
5128 INFO: Setuptools: 'typing_extensions' appears to be a setuptools-vendored copy - creating alias to 'setuptools._vendor.typing_extensions'!
5132 INFO: Processing standard module hook 'hook-setuptools.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
5162 INFO: Processing standard module hook 'hook-platform.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
5205 INFO: Processing standard module hook 'hook-xml.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
5220 INFO: Processing standard module hook 'hook-_ctypes.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
5241 INFO: Processing pre-safe-import-module hook 'hook-distutils.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/pre_safe_import_module'
5287 INFO: Processing standard module hook 'hook-sysconfig.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
5296 INFO: Processing standard module hook 'hook-_osx_support.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
5299 INFO: Processing pre-safe-import-module hook 'hook-jaraco.functools.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/pre_safe_import_module'
5299 INFO: Setuptools: 'jaraco.functools' appears to be a setuptools-vendored copy - creating alias to 'setuptools._vendor.jaraco.functools'!
5305 INFO: Processing pre-safe-import-module hook 'hook-more_itertools.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/pre_safe_import_module'
5305 INFO: Setuptools: 'more_itertools' appears to be a setuptools-vendored copy - creating alias to 'setuptools._vendor.more_itertools'!
5443 INFO: Processing pre-safe-import-module hook 'hook-packaging.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/pre_safe_import_module'
5542 INFO: Processing pre-safe-import-module hook 'hook-jaraco.text.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/pre_safe_import_module'
5542 INFO: Setuptools: 'jaraco.text' appears to be a setuptools-vendored copy - creating alias to 'setuptools._vendor.jaraco.text'!
5549 INFO: Processing standard module hook 'hook-setuptools._vendor.jaraco.text.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
5549 INFO: Processing pre-safe-import-module hook 'hook-importlib_resources.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/pre_safe_import_module'
5550 INFO: Processing pre-safe-import-module hook 'hook-jaraco.context.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/pre_safe_import_module'
5550 INFO: Setuptools: 'jaraco.context' appears to be a setuptools-vendored copy - creating alias to 'setuptools._vendor.jaraco.context'!
5743 INFO: Processing pre-safe-import-module hook 'hook-backports.tarfile.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/pre_safe_import_module'
5743 INFO: Setuptools: 'backports.tarfile' appears to be a setuptools-vendored copy - creating alias to 'setuptools._vendor.backports.tarfile'!
5803 INFO: Processing standard module hook 'hook-backports.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/_pyinstaller_hooks_contrib/stdhooks'
5853 INFO: Processing pre-safe-import-module hook 'hook-importlib_metadata.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/pre_safe_import_module'
5853 INFO: Setuptools: 'importlib_metadata' appears to be a setuptools-vendored copy - creating alias to 'setuptools._vendor.importlib_metadata'!
5870 INFO: Processing standard module hook 'hook-setuptools._vendor.importlib_metadata.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
5871 INFO: Processing pre-safe-import-module hook 'hook-zipp.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/pre_safe_import_module'
5871 INFO: Setuptools: 'zipp' appears to be a setuptools-vendored copy - creating alias to 'setuptools._vendor.zipp'!
6060 INFO: Processing pre-safe-import-module hook 'hook-tomli.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/pre_safe_import_module'
6060 INFO: Setuptools: 'tomli' appears to be a setuptools-vendored copy - creating alias to 'setuptools._vendor.tomli'!
6586 INFO: Processing pre-safe-import-module hook 'hook-wheel.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/pre_safe_import_module'
6586 INFO: Setuptools: 'wheel' appears to be a setuptools-vendored copy - creating alias to 'setuptools._vendor.wheel'!
7245 INFO: Processing standard module hook 'hook-multiprocessing.util.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
7814 INFO: Processing standard module hook 'hook-difflib.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
8044 INFO: Processing standard module hook 'hook-jinja2.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/_pyinstaller_hooks_contrib/stdhooks'
/Users/oluwatosin/Documents/code/work/personal/bds/logic/utils.py:23: SyntaxWarning: invalid escape sequence '\B'
- Windows: %APPDATA%\BibleDisplay\config.json
8772 INFO: Processing standard module hook 'hook-markdown.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/_pyinstaller_hooks_contrib/stdhooks'
9001 INFO: Processing standard module hook 'hook-xml.etree.cElementTree.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
9066 INFO: Analyzing hidden import 'wx._aui'
9066 INFO: Analyzing hidden import 'wx._dataview'
9066 INFO: Analyzing hidden import 'wx._glcanvas'
9066 INFO: Analyzing hidden import 'wx._grid'
9066 INFO: Analyzing hidden import 'wx._media'
9066 INFO: Analyzing hidden import 'wx._propgrid'
9066 INFO: Analyzing hidden import 'wx._ribbon'
9066 INFO: Analyzing hidden import 'wx._richtext'
9066 INFO: Analyzing hidden import 'wx._stc'
9066 INFO: Analyzing hidden import 'wx._xml'
9066 INFO: Analyzing hidden import 'wx._xrc'
9067 INFO: Analyzing hidden import 'wx.aui'
9068 INFO: Analyzing hidden import 'wx.dataview'
9072 INFO: Analyzing hidden import 'wx.gizmos'
9305 INFO: Analyzing hidden import 'wx.glcanvas'
9306 INFO: Analyzing hidden import 'wx.grid'
9311 INFO: Analyzing hidden import 'wx.lib.CDate'
9315 INFO: Analyzing hidden import 'wx.lib.ClickableHtmlWindow'
9316 INFO: Analyzing hidden import 'wx.lib.activex'
9318 INFO: Processing standard module hook 'hook-wx.lib.activex.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/_pyinstaller_hooks_contrib/stdhooks'
Traceback (most recent call last):
File "<string>", line 1, in <module>
import wx.lib.activex
File "/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/wx/lib/activex.py", line 32, in <module>
import wx.msw
File "/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/wx/msw.py", line 10, in <module>
from ._msw import *
ModuleNotFoundError: No module named 'wx._msw'
9376 INFO: Analyzing hidden import 'wx.lib.activexwrapper'
9378 INFO: Processing pre-safe-import-module hook 'hook-win32com.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/_pyinstaller_hooks_contrib/pre_safe_import_module'
9378 INFO: Analyzing hidden import 'wx.lib.agw.advancedsplash'
9384 INFO: Analyzing hidden import 'wx.lib.agw.aquabutton'
9399 INFO: Analyzing hidden import 'wx.lib.agw.artmanager'
9436 INFO: Analyzing hidden import 'wx.lib.agw.aui'
9878 INFO: Analyzing hidden import 'wx.lib.agw.aui.aui_switcherdialog'
9899 INFO: Analyzing hidden import 'wx.lib.agw.balloontip'
9931 INFO: Analyzing hidden import 'wx.lib.agw.buttonpanel'
9966 INFO: Analyzing hidden import 'wx.lib.agw.cubecolourdialog'
10031 INFO: Analyzing hidden import 'wx.lib.agw.flatmenu'
10191 INFO: Analyzing hidden import 'wx.lib.agw.flatnotebook'
10291 INFO: Analyzing hidden import 'wx.lib.agw.floatspin'
10314 INFO: Analyzing hidden import 'wx.lib.agw.foldpanelbar'
10341 INFO: Analyzing hidden import 'wx.lib.agw.fourwaysplitter'
10355 INFO: Analyzing hidden import 'wx.lib.agw.genericmessagedialog'
10384 INFO: Analyzing hidden import 'wx.lib.agw.hyperlink'
10390 INFO: Analyzing hidden import 'wx.lib.agw.infobar'
10402 INFO: Analyzing hidden import 'wx.lib.agw.knobctrl'
10415 INFO: Analyzing hidden import 'wx.lib.agw.multidirdialog'
10421 INFO: Analyzing hidden import 'wx.lib.agw.peakmeter'
10437 INFO: Analyzing hidden import 'wx.lib.agw.persist'
10885 INFO: Analyzing hidden import 'wx.lib.agw.piectrl'
10902 INFO: Analyzing hidden import 'wx.lib.agw.pybusyinfo'
10907 INFO: Analyzing hidden import 'wx.lib.agw.pygauge'
10916 INFO: Analyzing hidden import 'wx.lib.agw.pyprogress'
10927 INFO: Analyzing hidden import 'wx.lib.agw.ribbon'
11155 INFO: Analyzing hidden import 'wx.lib.agw.rulerctrl'
11184 INFO: Analyzing hidden import 'wx.lib.agw.scrolledthumbnail'
11215 INFO: Analyzing hidden import 'wx.lib.agw.shortcuteditor'
11255 INFO: Analyzing hidden import 'wx.lib.agw.speedmeter'
11305 INFO: Analyzing hidden import 'wx.lib.agw.supertooltip'
11328 INFO: Analyzing hidden import 'wx.lib.agw.thumbnailctrl'
11335 INFO: Analyzing hidden import 'wx.lib.agw.toasterbox'
11352 INFO: Analyzing hidden import 'wx.lib.agw.xlsgrid'
11379 INFO: Analyzing hidden import 'wx.lib.agw.zoombar'
11394 INFO: Analyzing hidden import 'wx.lib.analogclock'
11451 INFO: Analyzing hidden import 'wx.lib.anchors'
11453 INFO: Analyzing hidden import 'wx.lib.art'
11453 INFO: Analyzing hidden import 'wx.lib.art.flagart'
11466 INFO: Analyzing hidden import 'wx.lib.art.img2pyartprov'
11467 INFO: Analyzing hidden import 'wx.lib.busy'
11470 INFO: Analyzing hidden import 'wx.lib.calendar'
11502 INFO: Analyzing hidden import 'wx.lib.checkbox'
11513 INFO: Analyzing hidden import 'wx.lib.colourchooser'
11538 INFO: Analyzing hidden import 'wx.lib.combotreebox'
11552 INFO: Analyzing hidden import 'wx.lib.delayedresult'
11558 INFO: Analyzing hidden import 'wx.lib.dialogs'
11575 INFO: Analyzing hidden import 'wx.lib.docview'
11622 INFO: Analyzing hidden import 'wx.lib.dragscroller'
11624 INFO: Analyzing hidden import 'wx.lib.editor'
11648 INFO: Analyzing hidden import 'wx.lib.eventStack'
11651 INFO: Analyzing hidden import 'wx.lib.eventwatcher'
11661 INFO: Analyzing hidden import 'wx.lib.evtmgr'
11669 INFO: Processing standard module hook 'hook-wx.lib.pubsub.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/_pyinstaller_hooks_contrib/stdhooks'
11840 INFO: Analyzing hidden import 'wx.lib.filebrowsebutton'
11849 INFO: Analyzing hidden import 'wx.lib.flashwin'
11855 INFO: Analyzing hidden import 'wx.lib.flashwin_old'
11861 INFO: Analyzing hidden import 'wx.lib.floatcanvas'
11862 INFO: Analyzing hidden import 'wx.lib.floatcanvas.FCEvents'
11863 INFO: Analyzing hidden import 'wx.lib.floatcanvas.FCObjects'
11918 INFO: Analyzing hidden import 'wx.lib.floatcanvas.FloatCanvas'
11947 INFO: Analyzing hidden import 'wx.lib.floatcanvas.NavCanvas'
11950 INFO: Analyzing hidden import 'wx.lib.floatcanvas.ScreenShot'
11951 INFO: Analyzing hidden import 'wx.lib.floatcanvas.Utilities.GUI'
11953 INFO: Analyzing hidden import 'wx.lib.foldmenu'
11955 INFO: Analyzing hidden import 'wx.lib.gestures'
11960 INFO: Analyzing hidden import 'wx.lib.graphics'
12058 INFO: Analyzing hidden import 'wx.lib.gridmovers'
12072 INFO: Analyzing hidden import 'wx.lib.iewin'
12337 INFO: Analyzing hidden import 'wx.lib.iewin_old'
12346 INFO: Analyzing hidden import 'wx.lib.imagebrowser'
12363 INFO: Analyzing hidden import 'wx.lib.infoframe'
12372 INFO: Analyzing hidden import 'wx.lib.itemspicker'
12378 INFO: Analyzing hidden import 'wx.lib.langlistctrl'
12388 INFO: Analyzing hidden import 'wx.lib.mixins.grid'
12389 INFO: Analyzing hidden import 'wx.lib.mixins.gridlabelrenderer'
12393 INFO: Analyzing hidden import 'wx.lib.mixins.imagelist'
12395 INFO: Analyzing hidden import 'wx.lib.mixins.inspection'
12396 INFO: Analyzing hidden import 'wx.lib.mixins.listctrl'
12411 INFO: Analyzing hidden import 'wx.lib.mixins.rubberband'
12419 INFO: Analyzing hidden import 'wx.lib.msgpanel'
12421 INFO: Analyzing hidden import 'wx.lib.multisash'
12440 INFO: Analyzing hidden import 'wx.lib.nvdlg'
12444 INFO: Analyzing hidden import 'wx.lib.ogl'
12635 INFO: Analyzing hidden import 'wx.lib.pdfwin'
12638 INFO: Analyzing hidden import 'wx.lib.pdfwin_old'
12646 INFO: Analyzing hidden import 'wx.lib.platebtn'
12658 INFO: Analyzing hidden import 'wx.lib.popupctl'
12663 INFO: Analyzing hidden import 'wx.lib.printout'
12690 INFO: Analyzing hidden import 'wx.lib.progressindicator'
12693 INFO: Analyzing hidden import 'wx.lib.pubsub.core.datamsg'
12693 ERROR: Hidden import 'wx.lib.pubsub.core.datamsg' not found
12693 INFO: Analyzing hidden import 'wx.lib.pubsub.core.itopicdefnprovider'
12693 INFO: Analyzing hidden import 'wx.lib.pubsub.core.listenerbase'
12697 INFO: Analyzing hidden import 'wx.lib.pubsub.core.publisherbase'
12699 INFO: Analyzing hidden import 'wx.lib.pubsub.setuparg1'
12699 INFO: Analyzing hidden import 'wx.lib.pubsub.setupkwargs'
12700 INFO: Analyzing hidden import 'wx.lib.pubsub.utils'
12710 INFO: Analyzing hidden import 'wx.lib.pubsub.utils.misc'
12711 INFO: Analyzing hidden import 'wx.lib.pubsub.utils.xmltopicdefnprovider'
12717 INFO: Analyzing hidden import 'wx.lib.pydocview'
12787 INFO: Analyzing hidden import 'wx.lib.resizewidget'
12793 INFO: Analyzing hidden import 'wx.lib.sheet'
12800 INFO: Analyzing hidden import 'wx.lib.sized_controls'
12810 INFO: Analyzing hidden import 'wx.lib.softwareupdate'
12816 INFO: Analyzing hidden import 'wx.lib.splitter'
12831 INFO: Analyzing hidden import 'wx.lib.statbmp'
12833 INFO: Analyzing hidden import 'wx.lib.throbber'
12839 INFO: Analyzing hidden import 'wx.lib.ticker'
12842 INFO: Analyzing hidden import 'wx.lib.ticker_xrc'
12845 INFO: Processing standard module hook 'hook-wx.xrc.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/_pyinstaller_hooks_contrib/stdhooks'
12845 INFO: Analyzing hidden import 'wx.lib.wxpTag'
12849 INFO: Analyzing hidden import 'wx.media'
12850 INFO: Analyzing hidden import 'wx.propgrid'
12871 INFO: Analyzing hidden import 'wx.py.PyAlaCarte'
12873 INFO: Analyzing hidden import 'wx.py.PyAlaMode'
12873 INFO: Analyzing hidden import 'wx.py.PyAlaModeTest'
12874 INFO: Analyzing hidden import 'wx.py.PyCrust'
12876 INFO: Analyzing hidden import 'wx.py.PyFilling'
12877 INFO: Analyzing hidden import 'wx.py.PyShell'
12878 INFO: Analyzing hidden import 'wx.py.PySlices'
12880 INFO: Analyzing hidden import 'wx.py.PySlicesShell'
12882 INFO: Analyzing hidden import 'wx.py.PyWrap'
12883 INFO: Analyzing hidden import 'wx.ribbon'
12884 INFO: Analyzing hidden import 'wx.richtext'
12887 INFO: Analyzing hidden import 'wx.svg'
12893 INFO: Analyzing hidden import 'wx.tools.genaxmodule'
12894 INFO: Analyzing hidden import 'wx.tools.helpviewer'
12895 INFO: Analyzing hidden import 'wx.tools.img2img'
12897 INFO: Analyzing hidden import 'wx.tools.img2png'
12897 INFO: Analyzing hidden import 'wx.tools.img2py'
12903 INFO: Analyzing hidden import 'wx.tools.img2xpm'
12904 INFO: Analyzing hidden import 'wx.tools.pywxrc'
12924 INFO: Processing standard module hook 'hook-xml.dom.domreg.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks'
13033 INFO: Analyzing hidden import 'wx.tools.wxget'
15211 INFO: Analyzing hidden import 'wx.tools.wxget_docs_demo'
15215 INFO: Analyzing hidden import 'wx.xml'
15216 INFO: Processing module hooks (post-graph stage)...
15503 INFO: Performing binary vs. data reclassification (140 entries)
15508 INFO: Looking for ctypes DLLs
15588 INFO: Analyzing run-time hooks ...
15591 INFO: Including run-time hook 'pyi_rth_inspect.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/rthooks'
15592 INFO: Including run-time hook 'pyi_rth_setuptools.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/rthooks'
15593 INFO: Including run-time hook 'pyi_rth_multiprocessing.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/rthooks'
15594 INFO: Including run-time hook 'pyi_rth_pkgutil.py' from '/Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/hooks/rthooks'
15604 INFO: Creating base_library.zip...
15616 INFO: Looking for dynamic libraries
15743 INFO: Warnings written to /Users/oluwatosin/Documents/code/work/personal/bds/build/mac/warn-mac.txt
15774 INFO: Graph cross-reference written to /Users/oluwatosin/Documents/code/work/personal/bds/build/mac/xref-mac.html
15846 INFO: checking PYZ
15846 INFO: Building PYZ because PYZ-00.toc is non existent
15846 INFO: Building PYZ (ZlibArchive) /Users/oluwatosin/Documents/code/work/personal/bds/build/mac/PYZ-00.pyz
16638 INFO: Building PYZ (ZlibArchive) /Users/oluwatosin/Documents/code/work/personal/bds/build/mac/PYZ-00.pyz completed successfully.
16651 INFO: EXE target arch: arm64
16651 INFO: Code signing identity: None
16654 INFO: checking PKG
16654 INFO: Building PKG because PKG-00.toc is non existent
16654 INFO: Building PKG (CArchive) Bible Display Software.pkg
29566 INFO: Building PKG (CArchive) Bible Display Software.pkg completed successfully.
29569 INFO: Bootloader /Users/oluwatosin/Documents/code/work/personal/bds/venv/lib/python3.13/site-packages/PyInstaller/bootloader/Darwin-64bit/runw
29569 INFO: checking EXE
29569 INFO: Building EXE because EXE-00.toc is non existent
29569 INFO: Building EXE from EXE-00.toc
29569 INFO: Copying bootloader EXE to /Users/oluwatosin/Documents/code/work/personal/bds/dist/Bible Display Software
29570 INFO: Converting EXE to target arch (arm64)
29582 INFO: Removing signature(s) from EXE
29600 INFO: Modifying Mach-O image UUID(s) in EXE
29638 INFO: Appending PKG archive to EXE
29656 INFO: Fixing EXE headers for code signing
29658 INFO: Re-signing the EXE
29743 INFO: Building EXE from EXE-00.toc completed successfully.
29747 DEPRECATION: Onefile mode in combination with macOS .app bundles (windowed mode) don't make sense (a .app bundle can not be a single file) and clashes with macOS's security. Please migrate to onedir mode. This will become an error in v7.0.
29747 INFO: checking BUNDLE
29747 INFO: Building BUNDLE because BUNDLE-00.toc is non existent
29747 INFO: Building BUNDLE BUNDLE-00.toc
29763 INFO: Signing the BUNDLE...
29851 INFO: Building BUNDLE BUNDLE-00.toc completed successfully.
29851 INFO: Build complete! The results are available in: /Users/oluwatosin/Documents/code/work/personal/bds/dist
Please, is there something I am doing wrong? Thank you for your response in anticipation.
wx._msw is a is a Windows-only module. Those modules provide wrappers around Windows COM and simply don’t exist on macOS or Linux. wx._msw ships as part of the binary build of wxPython. python3 app.py (which is running properly) works on macOS because the imports are guarded by an OS check. But PyInstaller analyzes all imports statically, ignoring those runtime conditions. So it tries to pull in wx.lib.activex, finds import wx.msw, and fails.
You can exclude these window function in you app by using exclude list which is already there.
a = Analysis(
['app.py'],
pathex=[os.getcwd()],
binaries=[],
datas=[
('static', 'static'),
('templates', 'templates'),
('gui', 'gui'),
('logic', 'logic'),
],
hiddenimports=hiddenimports,
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=['wx.lib.activex', 'wx.lib.activexwrapper', 'wx.msw', 'wx._msw'],
noarchive=False,
)
After that rebuild you app and run it. Hope this will solves the problem.