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: 40.918 ]

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

Tutorial OpenGL

Tutorial OpenGL v2.0

Gerencie suas contas financeiras pessoais com Terminal Finances

Criando um sistema operacional com ASM e C++

Reprodução de arquivos WAV com SDL_mixer e linguagem C

  
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