problem when including readline.h

Robert Bonomi bonomi at mail.r-bonomi.com
Mon Feb 14 01:46:38 UTC 2011


> From owner-freebsd-questions at freebsd.org  Sun Feb 13 17:00:08 2011
> From: Robert Huff <roberthuff at rcn.com>
> Date: Sun, 13 Feb 2011 17:56:12 -0500
> To: Chip Camden <sterling at camdensoftware.com>
> Cc: questions at freebsd.org
> Subject: Re: problem when including readline.h
>
>
> Chip Camden writes:
>
> >  >  I'm writing a C program which, for various reasons, has the warning 
> >  >  level turned _way_ up. I'm now getting this:
> >  >
> >  > /usr/include/readline/readline.h:336: warning: redundant 
> >  > redeclaration of 'rl_make_bare_keymap' 
> >  > /usr/include/readline/keymaps.h:74: warning: previous declaration of 
> >  > 'rl_make_bare_keymap' was here
> >  >
> >  >  and more like it. Other than turning down the warning level, what's 
> >  >  wrong and how do I fix it?
> >
> >  Both keymaps.h and readline.h declare rl_make_bare_keymap as an 
> >  external function.  Perhaps you shouldn't be including both files?
>
>  Except I don't.

You have to chase through all the includes to see what is included by
the files you directly include.  It's pretty sure to be sometthing in
the '<readline/>' directory.

>                   The include list:
>
> #include <sys/types.h>
> #include <ctype.h>
> #include <limits.h>
> #include <mysql/mysql.h>
> #include <stdio.h>
> #include <stdlib.h>
> #include <string.h>
> #include <strings.h>
> #include <sys/param.h>
> #include <unistd.h>
> #include <readline/readline.h>
> #include <readline/history.h>
>
>  No second "keymap.h" visible.
>


More information about the freebsd-questions mailing list