22

gcc を使用して、Ubuntuでこのチュートリアルの単純な C の例をコンパイルしようとしています。に必要なライブラリを含めるには、gcc の引数として何を使用する必要があります#include <libappindicator/app-indicator.h>か?

4

6 に答える 6

81
-I<search path to include files>
-L<search path to the lib file>
-l<libname>
于 2011-05-16T11:42:29.287 に答える
16

-lコマンド ライン オプションを使用します。オプションでライブラリ検索パスを指定できます-L。例えば:

gcc -o myprogram -lfoo -L/home/me/foo/lib myprogram.c

これにより、フォルダ内myprogramのスタティック ライブラリがリンクされます。libfoo.a/home/me/foo/lib

于 2011-05-16T11:42:37.383 に答える
5
gcc example.c -o example  `pkg-config --cflags --libs appindicator-0.1`

pkg-config は、必要な include フラグと lib フラグをフェッチし、そのlibappindicator依存関係を取得します。libappindictaor-devこれは、パッケージが既にインストールされていることを前提としています。

于 2012-10-02T07:34:58.660 に答える
5

私がすることは:

pkg-config --list-all | grep indicator
于 2011-09-06T12:41:59.333 に答える
5

apt-getSynaptic Package Managerなどを使用してappindicatorライブラリを取得した場合 (ソースからビルドするのではなく)、libappindicator1パッケージのみをインストールしましたか、それともヘッダー ファイルを取得するためにインストールしましたか? Linux パッケージでは、ランタイム ライブラリがコンパイル時のヘッダーから分割されていることがよくあります。そうすれば、動的リンクを満たすためだけにライブラリが必要な人は、不要なヘッダーをインストールする必要がなくなります。ただし、開発を行っているため、これらのヘッダーが必要であり、したがってパッケージも必要です。libappindicator-devlibappindicatorlibappindicator-dev

于 2011-05-16T11:47:09.507 に答える
1

ここでやろうとしているのは、gtk アプリを作成することです。上記の解決策は、-l オプションや -I オプションを使用するなど、どこにでも適用できます。

ただし、GTK アプリの場合は、pkg-config を使用することもできます。これにより、パスを事前定義できるので簡単になります

http://www.freedesktop.org/wiki/Software/pkg-config

興味深い例がここにあります http://developer.gnome.org/gtk/2.24/gtk-compiling.html

于 2011-05-16T12:03:55.107 に答える