Hallo, Am Fre, 06 Jul 2007, Steffen Dettmer schrieb:
* David Haller wrote on Wed, Jul 04, 2007 at 18:02 +0200:
$ rpm -qf /usr/include/linux/errno.h linux-kernel-headers-2.6.18.2-3
Somit läuft das ja aufs gleiche raus wenn man kein Kernelupdate macht. (Die SUSE-Kernelupdates sind ja so minimal dass sich da an den Headern wirklich nichts geändert haben sollte.)
Stimmt. Naja, es wird bei den Updatekernels ja auch hoffentlich nix an den Headern geändert... Sonst müßte man IMO die Header liefern...
... und die glibc updaten, wäre ja schade, wenn int 0x80 nr 1 plötzlich fork wäre lol
Jo, sonst gibt's halt Fehler zur Laufzeit, aber da helfen neue Header auch nicht, die werden ja nur beim kompilieren verwendet.
Bei einem Updatekernel gibt's jedenfalls keine kernel-headers. Insofern hast du dich dann zu früh gefreut. ;-)
Doof :(
stimmt:
link:~ # diff -Nur /usr/include/linux/errno.h /usr/src/linux/include/linux/ +++ /usr/src/linux/include/linux/errno.h 2005-05-24 17:41:46.000000000 +0200 @@ -21,6 +21,9 @@ #define EBADTYPE 527 /* Type not supported by server */ #define EJUKEBOX 528 /* Request initiated, but will not complete before timeout */
+/* Defined for TUX async IO */ +#define EWOULDBLOCKIO 530 /* Would block due to block-IO */ + #endif
Das geht noch. Geänderte Strukturen sind unangenehmer...
link:~ # diff -Nur /usr/include/linux/ /usr/src/linux/include/linux/|wc -l 29590
<schluck>
62 files gibts nur im Kernel - na gut, glibc kann ja Teilmenge sein. Aber das diff enthält auch sonst noch genug...
Einiges ist auch Kernel-intern (per '#if defined(__KERNEL__)')...
Wenn ich hier mit meinem 2.4.3x Kernel noch die 2.2.10er Header in /usr/include/linux hätte (würde einiges nicht funktionieren)... ;)
U.a. gab's da noch kein ext3 und ich verwende nur ext3... :)
läuft eigentlich eine gegen 2.2.10 kompilierte glibc korrekt mit 2.4.3?
Jup. $ uname -a Linux slarty 2.4.33.2-dnh-1 #2 Thu Aug 24 16:56:54 CEST 2006 i686 unknown $ /lib/libc.so.6 | grep 'Linux\|version' GNU C Library stable release version 2.1.3, by Roland McGrath et al. Compiled by GNU CC version 2.95.2 19991024 (release). Compiled on a Linux 2.2.14 system on 2000-03-24. crypt add-on version 2.1 by Michael Glad and others
Filesysteme sollten /usr/src/linux/include/linux/errno.h includen, oder?
Wenn du sowas wie e2fsck etc. meinst: Nein. /lib/modules/`uname -r`/build/include/linux/errno.h
Ansonsten sollen Programme (die /usr/include verwenden) aber doch nur von der libc aber nicht vom Kernel abhängen, oder (ich mein, soweit möglich).
Solange die nicht /usr/include/linux verwenden (oder selber Header mitbrigen) ist alles ok, wenn doch hängen die dann eben doch vom Kernel ab und wenn es Inkompatibilitäten gibt dann kracht es. s.u.
Sind die doppelten Header weakness - oder doch feature?
$ ls -ld /usr/include/{linux,asm,scsi} | cut -d/ -f2- usr/include/asm -> ../src/linux/include/asm/ usr/include/linux -> ../src/linux/include/linux/ usr/include/scsi -> ../src/linux/include/scsi/ Nuja, die Symlinks gibt's halt schon länger als den symlink /lib/modules/`uname -r`/build, heute sollten die darauf zeigen. Hm. Könnte ich mal "umbiegen" ;)
-dnh, der immer noch dabei bleibt, daß es bitte beim kompilieren "krachen" soll und nicht erst zur Laufzeit... Im Archiv sollte das ausführlich zu finden sein ;)
ach, Hauptsaches, es kracht! lol
Nuja, willst du's lieber krachen haben, wenn du beim kompilieren bist oder z.B. erst "beim Kunden"? -dnh -- A funny symbol that I can't read has just been input. Continue, and I'll forget that it ever happened. -- a TeX message -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org