Criando programas com suporte a arquivos de configuração com a libConfuse

Tentarei demonstrar nesse tutorial como criar um programa que faz uso de um arquivo de configuração, e como não nos convém aqui tentarmos reinventar a roda, estarei utilizando para tal tarefa uma biblioteca muito útil chamada libConfuse.

[ Hits: 41.422 ]

Por: Andre Luiz da Silva em 02/06/2004


Baixando e instalando



Antes de nos aventurarmos no uso dessa biblioteca, precisamos instalá-la em nosso sistema, uma vez que ela não vem por padrão em nenhuma distribuição que eu conheço. ;-)

Você pode encontrar pacotes pré-compilados no formato RPM ou baixar os fontes, tanto o pacote RPM quando o pacote contendo os fontes podem ser encontradas em:
Para instalarmos a libConfuse no nosso sistema, não têm nenhum segredo. Caso tenha dúvidas faça:

1° Descompactando:

$ tar -zxvf confuse-2.2.tar.gz && cd confuse-2.2

2° Compilando e instalando:

$ ./configure
$ make
$ su -c 'make install'


3° Copiando a confuse.h:

Depois que já temos a biblioteca compilada e instalada, precisamos compilar o arquivo contendo as macros e a declaração das funções e das variáveis globais utilizadas pela libConfuse para o diretório /usr/include, para isso faça:

$ cd src/
$ su -c 'cp confuse.h /usr/include'


Caso não queira copiar o arquivo cabeçalho para o diretório /usr/include, você pode fazer uso da flag -I<localização do header> (flag e argumento tudo JUNTO!) para gcc. Uma outra alternativa é incluir o header no seu código dessa maneira, considerando que o header está no mesmo diretório:

#include "libconfuse.h"
Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Baixando e instalando
   3. Estrutura de dados
   4. Funções e macros
   5. Exemplo
   6. Considerações finais
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Utilizando a biblioteca NCURSES - Parte I

Gerencie suas contas financeiras pessoais com Terminal Finances

Escrevendo o caos em C

Aleatoriedade em C

Conio.h para Linux

  
Comentários
[1] Comentário enviado por fabio em 02/06/2004 - 03:51h

Cara, que recurso "sinistro". Me amarrei no artigo, parabéns!
Bom, lá vai meu byte de contribuição: usuários de Debian e derivados podem instalar a libConfuse com o comando:

# apt-get install libconfuse-dev

[]'s

[2] Comentário enviado por dedraks em 02/06/2004 - 14:03h

Tem como linkar esta biblioteca estaticamente ao meu programa?
Para que o usuário não tenha que instalar a biblioteca em seu sistema.

[3] Comentário enviado por dedraks em 02/06/2004 - 14:27h

Já consegui fazer o que queria. :^)

[4] Comentário enviado por andrack em 18/06/2004 - 15:38h

Putz.... eu esqueci de citar no tutorial que por default a libConfuse eh compilada para ser usada estaticamente, caso vc queira usa-lá dinamicamente rode o script de configuração (configure) com a flag:
--enable-shared.


Beleza??

Falowz....

[5] Comentário enviado por carlosrfjunior em 28/04/2008 - 15:31h

Muito bom, esse seu turial andrack!

Para mim será muito útil! Só tenho uma dúvida que não estou conseguindo solucionar. Se eu quiser executar algum comando juntamente com o parametro do arquivo .Conf no console como posso fazer? Por exemplo:

#Seu Exemplo
#include <stdio.h>
#include <confuse.h>

int main(void)
{
char *IP= NULL;
cfg_t *cfg;
cfg_opt_t opts[] = {
CFG_SIMPLE_STR ("IP_TERMINAL", &IP),
CFG_END()
};
cfg = cfg_init (opts, 0);
cfg_parse (cfg, "exemplo.conf");

console("ping %s", IP); /* Qual o comando que eu posso usar*/

cfg_free(cfg);
return 0;
}

e como ficaria se eu tiver que passar algum parâmetro para o programa? Exemplo:

$ ./exemplo -h
ou
$ ./exemplo help

mostra o help personalizado

Obrigado

Carlos R F Júnior
Gestor de TI


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts