2

gtkmm (GTK+ GUI ツールキットの C++ バインディング) を使用して C++ で記述された音響スペクトル分析ツール ( spekに触発された) の開発を開始しています。今までにこれを行う方法を知っているはずだと思いますが...

私のディレクトリ構造はGNOME 風src/です。私の問い合わせの必要性を示した特定の状況は、にある GTK UI Manager の使用です。この特定の状況では、インストールに依存しない方法でこのファイルからユーザー インターフェイスをロードできるようにしたいと考えています (たとえば、ファイルのロードは a に依存しません。実行可能ファイルを実行して [UI ファイルをロード] することもできます)。実行後から[したがって、ソースを同じ実行可能ファイルにコンパイル] またはそのインストール プレフィックスから)。ソース コードで UI ファイルを参照するにはどうすればよいですか (ファイルの読み込みは、ファイル オブジェクト ( ) を作成することによってではなく、ファイルの場所を文字列引数として に渡すことによって実行されることに注意してください)。data/po/man/data/uimake installsrc/makefopen(...)(UIManager).add_ui_from_file(...)

UI ファイルのこの特定の状況に加えて、autotools ビルド プロセスを使用して、ファイル (つまり、データベース、INI ファイル、XML スキーマ) への同様の参照を行うにはどうすればよいですか? このタイプのディレクトリ構造を使用するプロジェクトをすばやくセットアップするための関連する Automake コードはありますか?

4

2 に答える 2

1

単純に両方のファイルを使用してみてください (アンインストールされたファイルが優先されます):

if(!(UIManager).add_ui_from_file(../data/ui/mygui))
   (UIManager).add_ui_from_file(/incalled/location/mygui)
于 2012-05-21T09:45:03.933 に答える
0

Glom では、両方の場所を Makefile.am で定義して、両方の場所を試すヘルパー関数を作成しました (Makefile.am が 1 つしかない場合は、非再帰的な automake を使用することで簡単になります): http ://git.gnome.org/browse/glom/tree/glom/glade_utils.h#n38

于 2012-05-26T08:16:35.643 に答える