py2appを使用してPythonwxPythonスクリプトの小さなアプリを作成しました。すべてが宣伝どおりに機能しましたが、アプリのサイズはかなり大きいです。py2appを最適化してアプリのサイズを小さくする方法はありますか?
2 に答える
これは回避策です。
ターゲットにするOSによって異なります。PythonとwxPythonは、すべてのMac OS Xインストールにバンドルされています(正しく思い出せば、少なくともLeopardから始めます)
あなたが試みるかもしれないことは、--alias
コンパイルオプションを追加することです。py2app docによると:
エイリアスモード(-Aまたは--aliasオプション)は、ソースファイルとデータファイルをインプレースで使用するアプリケーションバンドルを構築するようにpy2appに指示します。
アプリがMacOSXバージョンのwxPythonを使用しようとするようにします。
注意エイリアスオプションは開発モード
と呼ば
れます。
Mac OS Xにバンドルされていない別のライブラリを使用すると、機能しません。
アプリケーションをWindowsまたはLinuxに移植する場合、それは機能しません。
私はこの方法でいくつかの成功した使用をしましたが、結局、30/40MBのファイルを圧縮することに戻りました。結局、それほど大きくはありません。
py2appまたは他のそのようなパッケージャーは、ほとんどすべての依存関係とファイルをバンドルして、簡単に配布できるようにします。サイズは通常、すべての依存関係、共有ライブラリ、パッケージをスクリプトファイルと一緒にバンドルするため、大きくなります。ほとんどの場合、サイズを小さくすることは困難です。
ただし、バンドルされたアプリケーションの問題が少なくなるように、次のことを確認できます。
- --no-stripオプションを使用しないでください。これにより、デバッグシンボルが確実に削除されます。
- 「--optimize2または-O2」最適化オプションを使用します
- 「--strip(-S)」オプションを使用して、出力からデバッグシンボルとローカルシンボルを削除します
- 「--debug-skip-macholib」を使用すると、真にスタンドアロンにはなりませんが、サイズが小さくなります
- デモやドキュメントなどの不要なファイルをwxPythonから削除していただければ幸いです。