[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Re: compile error in kdemultimedia/mpeglib/lib/input
From:       Thiago Macieira <thiago.macieira () kdemail ! net>
Date:       2004-05-30 14:11:25
Message-ID: 200405301111.26057.thiago.macieira () kdemail ! net
[Download RAW message or body]

[Attachment #2 (multipart/signed)]


Martin Koller wrote:
>On Sunday 30 May 2004 00:49, Thiago Macieira wrote:
>> Martin Koller wrote:
>> >In file included from /usr/include/linux/cdrom.h:14,
>> >                 from cdromAccess_Linux.cpp:17,
>> >                 from cdromAccess.cpp:33:
>> >/usr/include/asm/byteorder.h:38: syntax error before `(' token
>> >/usr/include/asm/byteorder.h:42: '__u64' is used as a type, but is
>> > not defined as a type.
>> >/usr/include/asm/byteorder.h:43: syntax error before `}' token
>>
>> Kernel headers problem, not a KDE problem. Drop the -ansi switch
>> when compiling those directories and it'll work.
>
>It's not a problem for me to work around this error, but doesn't this
> mean that _everybody_ with a kernel with those headers will have that
> problem ? (I'm pretty sure that this is a huge number of people)
>Isn't there a simple solution or a check during configure, etc. ?

I'm not advocating not making workarounds, but I am against workarounds 
if a proper fix is possible.

Bugs must be fixed where the bug is. "Fixing" it somewhere else isn't 
fixing. The problem in this case is that the kernel headers' 
declaration of __u64 is conditional to STRICT_ANSI. The logical 
conclusion that follows is that every function or structure that uses 
__u64 must be conditional to STRICT_ANSI as well. And this is not the 
case.

We can't fix every little bug there is in other people's code by adding 
workarounds to our code. The kernel headers are especially the case 
because those are outright bugs that they don't want to fix (yet).

One last thing: distributors are responsible for cleaning up the kernel 
headers to make them compile against the libc they use. Users are not 
supposed to replace those kernel headers unless they want to take the 
responsibility for the cleaning up as well.

Yes, I know that's not the best case scenario, but it is the scenario we 
have.
-- 
  Thiago Macieira  -  Registered Linux user #65028
   thiago (AT) macieira (DOT) info
    ICQ UIN: 1967141   PGP/GPG: 0x6EF45358; fingerprint:
    E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358

[Attachment #5 (application/pgp-signature)]

>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic