gentoo und 2.6.x Kernel-Includes

Jan-Benedict Glaw jbglaw at lug-owl.de
Mon Feb 9 15:21:40 CET 2004


On Mon, 2004-02-09 15:11:36 +0100, Markus Wigge <markus at cultcom.de>
wrote in message <40279518.8060208 at cultcom.de>:
> ich stoße in letzter Zeit mit gentoo immer wieder auf Probleme
> beim Compilieren von Paketen, zuletzt bei libgtop-2.0.8.
> 
> In den meisten Fällen gab es Probleme mit Include-Dateien aus
> /usr/include/linux:
> -----------------------------------------------------------------------
> In file included from /usr/include/linux/timer.h:5,
>                  from /usr/include/linux/isdn/fsm.h:15,
>                  from /usr/include/linux/isdn.h:17,
>                  from ppp.c:29:
> /usr/include/linux/list.h:594:2: warning: #warning "don't include kernel 
> headers in userspace"
> -----------------------------------------------------------------------

Die Warnung ist berechtigt und richtig. Denk' mal an eine 64bittigen
Kernel mit 32bittigem Userspace - da werden dann einige Dinge nicht
passen...

> Da ich mit dem normalen 2.6.2 Kernel arbeite und es dafür bisher noch
> kein "linux-headers" Paket gab habe ich folgende symbolische Links
> angelegt:
> /usr/include/linux       -> /usr/src/linux/include/linux
> /usr/include/asm         -> /usr/src/linux/include/asm
> /usr/include/asm-generic -> /usr/src/linux/include/asm-generic
> 
> /usr/src/linux verweist natürlich immer auf den aktuell benutzten
> Kernel-Tree...

...und schon bist Du in die Falle getappt :)

> Aufgrund der Warnung frage ich mich jetzt allerdings ob Kernel-Header
> generell nicht mehr benutzt werden sollten und warum diverse User-Space

Sollen sie nicht.

> Programme es trotzdem tun...

Ist ein Bug. Die Programme sollen entweder die header files der libc
nutzen, oder (wenn sie wirklich Kernel-Interfaces nutzen, für die die
libc keinen Wrapper bereitstellt) sie haben sich eigene header files zu
schreiben.

> Was für Fehler können nach dem Wechsel auf die 2.6er Reihe noch auf mich
> zukommen? Gentoo wurde von Stage1 an unter 2.4 kompiliert. Können
> die Probleme auch daher rühren dass abhängige Pakete/Libs mit anderen
> Kernel-Quellen übersetzt wurden?

Nein. Du stößt an den "konzeptionellen Faulheits-Bug" von Entwicklern,
die passenden Kernel-Strukturen nicht in neue (eigene) header files zu
kopieren / neu zu erstellen.

MfG, JBG

-- 
   Jan-Benedict Glaw       jbglaw at lug-owl.de    . +49-172-7608481
   "Eine Freie Meinung in  einem Freien Kopf    | Gegen Zensur | Gegen Krieg
    fuer einen Freien Staat voll Freier Bürger" | im Internet! |   im Irak!
   ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lug-owl.de/pipermail/linux/attachments/20040209/b05fba8a/attachment.sig>


More information about the Linux mailing list