2

アプリの依存関係をアプリと分散させようとしています。

Macportsパッケージlibrsvg、boost、cairoを64ビットでインストールしました-SnowLeopardシステムにのみ。プログラムの.appバンドルを作成すると、/ optでライブラリを検索するアプリに含まれていないため、macportsと関連ライブラリがインストールされていないマシンでは機能しません。

静的リンクに--staticフラグを試しましたが、libcrt0エラーが発生しました。

MacPortsライブラリとその依存関係を単独配布に適したOSXアプリケーションにリンクするための最良の方法は何ですか?

4

3 に答える 3

2

ファイルのコピービルドフェーズを使用して、ライブラリをアプリケーションバンドルにコピーすることをお勧めします。dylibsはFrameworks、アプリバンドルのディレクトリに配置する必要があります。また、ライブラリをXcodeプロジェクトに追加する必要があります。

于 2010-08-19T17:10:27.610 に答える
0

py2appを使用してスタンドアロンアプリを作成してみてください。

于 2010-08-19T00:26:53.903 に答える
0

私はjsoncppのためにこれをしなければなりませんでした。私が行ったことは、プロジェクトのリンカー設定>ビルドフェーズ>ライブラリとのバイナリのリンクに移動し、他の追加を使用してライブラリのパスに移動し、デフォルトでopt / local/libの下にあるフォルダーからライブラリを追加しましたmacportのセットアップ リンカー設定

ヘッダーファイルの取得はもう少し複雑でした。この場合、私はusr / Includeに行き、ヘッダー付きのファイル/フォルダーを見つけてプロジェクトにコピーし、cppファイルに引用符( "")付きのインクルード行を追加しました。

たとえば、コピーを使用して/ usr / Include/jsonディレクトリをRestTemplateProjectフォルダに移動しました。その後、main.cppに追加されます

#include "json/json.h"
于 2013-11-15T21:21:25.943 に答える