[Debian-med-packaging] Bug#1042124: Flex help needed for eegdev (Was: Re: eegdev: FTBFS: ../../lib/stdio.h:64:3: error: #error "Please include config.h first.")

Niels Thykier niels at thykier.net
Fri Aug 25 16:17:47 BST 2023


Nilesh Patra:
> 
> 
> On 25 August 2023 1:47:26 pm IST, Nilesh Patra <nilesh at debian.org> wrote:
>> On Wed, 26 Jul 2023 21:52:17 +0200 Lucas Nussbaum <lucas at debian.org> wrote:
>>> Source: eegdev
>>> Version: 0.2-6
>>> Severity: serious
>>>> In file included from conffile.lex.c:242:
>>>> ../../lib/stdio.h:64:3: error: #error "Please include config.h first."
>>>>     64 |  #error "Please include config.h first."
>>>>        |   ^~~~~
>>
>> The lexed file conffile.lex.c seems to include some stuff before
>> config.h is included which is causing it to choke.
>>
>> I'm not acquainted with lexers and not sure what causes this. I'd
>> appreciate any help.
> 
> Adding mentors list as well. If someone can help with this, that'd be great.
> 
> Best,
> Nilesh
> 

Hi,

I do not think the lexer has anything to do with this.

A quick look at the log suggests that the package is "rolling" its own 
"stdio.h" (note the "../../lib/stdio.h" in the error message).  Indeed, 
the full log has "mv stdio.h-t3 stdio.h" as well.

I believe that this is stdio.h is generated by the embedded gnulib copy 
and that is as far as I am willing to debug that rabbit hole. Based on 
the error, I assume gnulib's generated stdio.h requires the project 
specific "config.h" to be loaded first.

As for solving it, I would have a look at the "conffile.lex.c" file, see 
where it has its "#include" for stdio.h and then add an `include 
"config.h"` before that to see if it works (via a patch).

Hope that helps.

Best regards,
Niels



More information about the Debian-med-packaging mailing list