私はLinuxとWindowsでしばらくQtを使用しています。しかし、昨日私は新しいMacBook Proを手に入れました。当然、私はMacで自分のQtアプリケーションを構築できるかどうか確認しています。OS XでQtアプリケーションをデプロイしたときに作成された非常に大きな.appバンドル
私はほとんどすべての作業を行っていますが、結果のアプリケーションバンドルのファイルサイズに問題があります。
私はこのように自分のアプリケーションを構築していますが:
qmake -spec macx-g++
make
macdeployqt my.app -no-plugins -dmg
バンドルとすべてが正常に動作するように見える、しかし、生成された.APPは31.1メガバイト大きく、.dmgファイル13.6 MBです!
これは正常ですか?この恐ろしいサイズを減らすことはできますか(Windowsでは、すべてのライブラリを持つ同じアプリのインストーラは約4MBです)。
ダイナミックライブラリを使用している2つのアプリは、Windowsでクラッシュする可能性が高いですね。しかし、最近更新されたため、あるアプリが同じライブラリの別のバージョンを必要とするのは同じリスクです。 Windowsの場合と同様に、これらの状況を管理したい場合は、セントラルダイナミックライブラリをインストールすることができます。 – koan
しかし、Mac OSは両方のQtの静的変数が重複しているので、Qtがクラッシュするような動的ライブラリもあります。アプリケーションは(ランダムに選択された)ロードされたライブラリのバージョンを使用します。短時間。 Windowsは1つのバージョンのみを読み込みます。これはいつも大丈夫です。 Qtは主にWindows用に設計されたもので、後で他のOSが追加され、時には奇妙な動作をすることもありました。 – Jens
@Jens:「Qtを動的にインストールする2つのアプリケーション」とはどういう意味ですか? .appバンドル内のライブラリは通常ありませんか?各アプリケーションが.appフォルダに独自のコピーを持っているため、2つのアプリケーションのQtバージョンがどのように干渉することがありますか? – houbysoft