The file libqcocoa.dylib does exist in the Qt distribution.

Definitely the stock pyinstaller -w operation does not include it or
anything else with a name like "*coco*" in the output bundle.

I modified the spec file to read as follows:

# -*- mode: python -*-
> a = Analysis(['/Users/dcortesi/Dropbox/David/PPQT/CoBro/cobro.py'],
>              pathex=['/Users/dcortesi/Desktop/scratch/pyinst'],
>              hiddenimports=[],
>              hookspath=None,
>              runtime_hooks=None)
> pyz = PYZ(a.pure)
>
> exe = EXE(pyz,
>           a.scripts,
>           exclude_binaries=True,
>           name='cobro',
>           debug=False,
>           strip=None,
>           upx=True,
>           console=False , icon='cobro.icns')
>
> a.binaries += [ ('cocoa',
> '/Developer/5.4/clang_64/plugins/platforms/libqcocoa.dylib', 'BINARY' ) ]
> a.binaries += [ ('libqcocoa',
> '/Developer/5.4/clang_64/plugins/platforms/libqcocoa.dylib', 'BINARY' ) ]
> a.binaries += [ ('libqcocoa.dylib',
> '/Developer/5.4/clang_64/plugins/platforms/libqcocoa.dylib', 'BINARY' ) ]
>
> coll = COLLECT(exe,
>                a.binaries,
>                a.zipfiles,
>                a.datas,
>                strip=None,
>                upx=True,
>                name='cobro')
> app = BUNDLE(coll,
>              name='cobro.app',
>              icon='cobro.icns')
>

When this is run, the desired lib does appear, in three copies under three
names, in the cobro.app bundle:

$ find dist/cobro.app -name '*coco*'
> dist/cobro.app/Contents/MacOS/cocoa
> dist/cobro.app/Contents/MacOS/libqcocoa
> dist/cobro.app/Contents/MacOS/libqcocoa.dylib
>

Nevertheless, when the app is executed it dies as before with the abort,

This application failed to start because it could not find or load the Qt
> platform plugin "cocoa".
>

I go into the "hooks" folder and execute cat hook-PyQt5* | grep cocoa and
get no output, so it is not mentioned in a hook. (Nor in PyQt4*)

Any ideas welcome...

-- 
You received this message because you are subscribed to the Google Groups 
"PyInstaller" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pyinstaller+unsubscr...@googlegroups.com.
To post to this group, send email to pyinstaller@googlegroups.com.
Visit this group at http://groups.google.com/group/pyinstaller.
For more options, visit https://groups.google.com/d/optout.

Reply via email to