it-swarm-pt.com

Como incluir a biblioteca C necessária usando o gcc?

Eu estou tentando compilar o exemplo C simples a partir deste Tutorial no Ubuntu usando o gcc. O que preciso usar como argumento para o gcc para incluir as bibliotecas necessárias para #include <libappindicator/app-indicator.h>?

15
multiholle

Se você usou apt-get, Synaptic Package Manager, etc., para obter a biblioteca appindicator (versus compilando-a a partir do código-fonte), você instalou apenas o libappindicator1 empacotou ou você também instalou libappindicator-dev para obter os arquivos de cabeçalho libappindicator? Os pacotes Linux frequentemente dividem as bibliotecas de tempo de execução dos cabeçalhos em tempo de compilação. Dessa forma, as pessoas que precisam apenas das bibliotecas para satisfazer um link dinâmico não precisam instalar cabeçalhos desnecessários. Mas, como você está desenvolvendo, você precisa desses cabeçalhos e, portanto, do libappindicator-dev pacote também.

5
QuantumMechanic
-I <searchpath to include files>
-L <searchpath to the lib file>
-l<thelibname>
52
Kristofer

Use o -l opção de linha de comando. Você pode especificar o caminho de pesquisa da biblioteca com o -L opção. Por exemplo:

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

Isso vinculará myprogram à biblioteca estática libfoo.a na pasta /home/me/foo/lib.

13
Vijay Mathew
gcc example.c -o example  `pkg-config --cflags --libs appindicator-0.1`

o pkg-config buscará os sinalizadores include e lib necessários para libappindicator e suas dependências. Isso pressupõe libappindictaor-dev pacote já está instalado.

5
lijo

O que eu faço é:

pkg-config --list-all | grep indicator
4
hytromo

O que você está tentando fazer aqui é criar um aplicativo gtk. As soluções acima são aplicáveis ​​em qualquer lugar, como usar as opções -l e -I,

No entanto, para aplicativos GTK, você também pode usar o pkg-config, o que facilita como seus caminhos podem ser predefinidos

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

Um exemplo interessante pode ser encontrado aqui http://developer.gnome.org/gtk/2.24/gtk-compiling.html

1
manugupt1