nichts mehr kompilierbar/ Endlosschleife
Hallo, habe hier schon zweimal gefragt aber keiner hatte einen heißen Tipp: ich kann auf meiner Suse 9.2 nichts mehr kompilieren: gerlach@rex3:~/install/ov511-2.27>make Building OVCam drivers for 2.6 kernel. PLEASE IGNORE THE "Overriding SUBDIRS" WARNING make -C /lib/modules/2.6.8-24.19-default/build SUBDIRS=/home/gerlach/install/ov511-2.27 modules make[1]: Entering directory `/usr/src/linux-2.6.8-24.19-obj/i386/default' make -C ../../../linux-2.6.8-24.19 O=../linux-2.6.8-24.19-obj/i386/default modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules [...] Endlosschleife, Linux hängt sich auf (RAM-Verbrauch) mache ich strg-c: make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make[85]: *** [modules] Unterbrechung make[84]: *** [modules] Unterbrechung make[83]: *** [modules] Unterbrechung make[82]: *** [modules] Unterbrechung make[81]: *** [modules] Unterbrechung make[80]: *** [modules] Unterbrechung make[79]: *** [modules] Unterbrechung [...] nochmal strg-c, dann bricht es endlich ab. Ich habe schon Kernel und sourcen komplett gelöscht und wieder installiert: ============================================================================ rm /boot/* rm -R /lib/modules/* cd /usr/src; rm -R * Kernel und sourcen drüberinstalliert: rpm -hiv /var/lib/YaST2/you/mnt/i386/update/9.2/rpm/i586/kernel-source-2.6.8-24.19.i586.rpm --force rpm -hiv /var/lib/YaST2/you/mnt/i386/update/9.2/rpm/i586/kernel-default-2.6.8-24.19.i586.rpm --force reboot Dann: cd /usr/src/linux make cloneconfig make prepare Dann funktioniert das Kompilieren von Source eine zeitlang wieder. Es wird jedoch bemängelt, daß Module.symvers fehlt, aber nicht in /usr/src/linux-2.6.8-24.19 sondern in /usr/src/linux-2.6.8-24.19-obj/i386/default/Module.symvers. Es soll ja eigentlich gerade mit make prepare das Module.symvers erzeugt werden, richtig? Dann habe ich VMware-Workstatation kompiliert. Das lief nicht durch sondern schrottet mir wieder fortan jede Compiliermöglichkeit: /usr/bin/vmware-config.pl [...] Using compiler "/usr/bin/gcc". Use environment variable CC to override. What is the location of the directory of C header files that match your running kernel? [/usr/src/linux/include] Extracting the sources of the vmmon module. Building the vmmon module. Using 2.6.x kernel build system. make: Entering directory `/tmp/vmware-config9/vmmon-only' make -C /usr/src/linux/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules make[1]: Entering directory `/usr/src/linux-2.6.8-24.19' make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules [...] Endlosschleife wie oben ! Und nix geht mehr! Keine einzige Source mehr kompilierbar, immer sofort die Endlosmeldungen. Was macht Suse mit YOU-Updates? (Speziell das Update auf Kernel 2.6.8-24.24 war es, was bei mir hier alles kaputt gemacht hat.) Bei Ubunto besser? Lösche ich wieder komplett /usr/src/linux und installiere die Source mit --force wieder drüber, kann ich nach make cloneconfig und make prepare vmware wieder installieren, allerdings wird bemängelt, daß /usr/src/linux-2.6.8-24.19/Module.symvers fehlt. Was ist defekt? Gruss Ekkard -- 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
Ekkard Gerlach wrote:
[...] habe hier schon zweimal gefragt aber keiner hatte einen heißen Tipp: ich kann auf meiner Suse 9.2 nichts mehr kompilieren:
Ich habe Dir schon einmal in der Vergangenheit darauf geantwortet: Mache Dich mit der Funktion eines Build-Directories vertraut - Du scheinst das immer zu ignorieren!
gerlach@rex3:~/install/ov511-2.27>make Building OVCam drivers for 2.6 kernel. PLEASE IGNORE THE "Overriding SUBDIRS" WARNING make -C /lib/modules/2.6.8-24.19-default/build SUBDIRS=/home/gerlach/install/ov511-2.27 modules ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Ein Link, der normalerweise auf das Build-Directory verweist.
[...] make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules ^^^^^^^^^^^^^^^^^^^^^^^^^^ Nichts mehr von einem Build-Directory zu sehen! Du laeufst in eine Endlosschleife. Ich habe in anderem Zusammenhang schon von diesem Phaenomen berichtet: das Makefile im Verzeichnis mit den Kernel-Quellen wird durch den Makefile-Wrapper des Build-Directories ueberschrieben und ruft sich fortan rekursiv selbst auf; solange, bis Dein RAM vollgelaufen ist oder Du abbrichst.
[...] Dann: cd /usr/src/linux make cloneconfig make prepare
Nein, das ist *NICHT* das Build-Directory. Damit konfigurierst Du den Kernel-Source im eigentlichen Kernel-Baum, nicht im Build-Directory. Es sollte ausserdem "make modules_prepare" heissen.
[...] Dann funktioniert das Kompilieren von Source eine zeitlang wieder. Es wird jedoch bemängelt, daß Module.symvers fehlt, aber nicht in /usr/src/linux-2.6.8-24.19 sondern in /usr/src/linux-2.6.8-24.19-obj/i386/default/Module.symvers.
Genau, die Datei fehlt im Build-Directory, weil Du die Funktion des Build-Directories komplett ignorierst.
[...] What is the location of the directory of C header files that match your running kernel? [/usr/src/linux/include]
Falscher Ort.
[...] Und nix geht mehr! Keine einzige Source mehr kompilierbar, immer sofort die Endlosmeldungen. Was macht Suse mit YOU-Updates?
Ich glaube bisher nicht, dass es ein SUSE-Fehler ist, ich denke anhand der bisherigen Infos, dass es Dein Fehler ist. Cheers, Th. -- 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
* Thomas Hertweck schrieb:
Ich habe Dir schon einmal in der Vergangenheit darauf geantwortet: Mache Dich mit der Funktion eines Build-Directories vertraut - Du scheinst das immer zu ignorieren!
habe ich jetzt verstanden. Merkwürdig ist nur, warum sich das BULD-DIR plötzlich mal zwischendurch ändert. Jetzt z.B., nachdem ich zum x-ten Male die Kernel-Sourcen gelöscht und in /usr/src/linux die Befehle make cloneconfig und make prepare (ok künftig modules_prepare) aufrufe, ist diesemal das BUILD-Verzeichnis gleich dem der Kernel-Quellen. So will ich es eigentlich auch! Ich kompiliere eher selten. Laut Deinem http://www.thomashertweck.de/kernel26.html kann ich mit O=/pfad/zum/build/directory überall das BUILD-Dir explitzit angeben. Wie aber stelle ich das BUILD-Dir ab? - Ich brauche die Trennung der Sourcen und Kompilate NICHT! Scheinbar ist manchmal (Zufall??) eben ein BUILD-Dir mit dabei. Ich finde leider Stelle in meinem /usr/src/linux/Makefile , das KBUILD_OUTPUT setzt. Dann verstehe ich bei mir in dem Zustand jetzt nicht, warum "alles funktioniert" ohne daß ich jemals mit BUILD irgendwas gemacht habe und nirgendwo in den compile-Kommandos mehr ein BUILD vorkommt und trotzdem in /lib/modules/2.6.8-24.19-default/ der Link BUILD existiert? Vielleicht noch vom ersten Mal, als alles gemixt war? # ls /lib/modules/2.6.8-24.19-default/build -l lrwxrwxrwx 1 root root 43 2007-01-01 11:38 /lib/modules/2.6.8-24.19-default/build -> /usr/src/linux-2.6.8-24.19-obj/i386/default in /usr/src/linux-2.6.8-24.19-obj/i386/default erkenne ich dann auch wieder ein .config und ein Makefile. Meine Güte was soll der Quatsch? - Soll jeder, der VMware unter Linux zum Laufen bekommen will oder mal eine Source compilieren will das alles kapieren? - Ich sehe es ist immer noch richtig in meinem Bekannten-Umfeld Windoof zu empfehlen, sonst muß ich denen noch das erklären. Es wird ja immer komlizierter von Kernel zu Kernel (ja, schön für die Kernel-freaks, wenn alles immer flexibler wird!) Kann mir jmd nun sagen, wie ich den BUILD-Kram aus dem 2.6er wegbekomme? Schönen Dank an Thomas, Dein Posting hat mir weitergeholfen ;-) Gruss Ekkard -- 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
Ekkard Gerlach wrote:
[...]
habe ich jetzt verstanden. Merkwürdig ist nur, warum sich das BULD-DIR plötzlich mal zwischendurch ändert. Jetzt z.B., nachdem ich zum x-ten Male die Kernel-Sourcen gelöscht und in /usr/src/linux die Befehle make cloneconfig und make prepare (ok künftig modules_prepare) aufrufe, ist diesemal das BUILD-Verzeichnis gleich dem der Kernel-Quellen. So will ich es eigentlich auch! Ich kompiliere eher selten.
Das Build-Directory aendert sich nicht ploetzlich und auch nicht automatisch. Wenn Du ein "make cloneconfig" in /usr/src/linux eingibst, und zwar ohne Angabe eines Build-Directory ueber O=, dann wird der Kernel-Baum selbst zum Build-Directory - wie es frueher auch war. Ein Build-Directory hat aber diverse Vorteile, weil dadurch der Baum mit den Kernel-Quellen nicht angetastet wird und man diverse verschiedene Kernel mit verschiedenen Konfigurationen erstellen kann, ohne dass sich etwas ins Gehege kommt. SuSE verwendet seit laengerer Zeit ein Build-Directory.
Laut Deinem http://www.thomashertweck.de/kernel26.html kann ich mit O=/pfad/zum/build/directory überall das BUILD-Dir explitzit angeben. Wie aber stelle ich das BUILD-Dir ab? - Ich brauche die Trennung der Sourcen und Kompilate NICHT! Scheinbar ist manchmal (Zufall??) eben ein BUILD-Dir mit dabei. Ich finde leider Stelle in meinem /usr/src/linux/Makefile , das KBUILD_OUTPUT setzt.
Nein, es ist kein Zufall. SuSE verwendet ein Build-Directory, dementsprechend ist das System (und sind die SuSE Kernel-RPMs) auch darauf ausgelegt. Insbesondere verweist der Link /lib/modules/`uname -r`/build nicht auf das Verzeichnis mit den Kernel-Quellen, sondern auf das separate Build-Directory.
Dann verstehe ich bei mir in dem Zustand jetzt nicht, warum "alles funktioniert" ohne daß ich jemals mit BUILD irgendwas gemacht habe und nirgendwo in den compile-Kommandos mehr ein BUILD vorkommt und trotzdem in /lib/modules/2.6.8-24.19-default/ der Link BUILD existiert? Vielleicht noch vom ersten Mal, als alles gemixt war?
Dieser Link ist Teil der SuSE RPMs. Wenn Du kein Build-Directory verwenden willst, musst Du ihn aendern.
# ls /lib/modules/2.6.8-24.19-default/build -l lrwxrwxrwx 1 root root 43 2007-01-01 11:38 /lib/modules/2.6.8-24.19-default/build -> /usr/src/linux-2.6.8-24.19-obj/i386/default
Das ist korrekt fuer die Verwendung eines Build-Directories. Der Link zeigt auf das Build-Directory, das SuSE fuer den Standardkernel der i386 Architektur verwendet.
in /usr/src/linux-2.6.8-24.19-obj/i386/default erkenne ich dann auch wieder ein .config und ein Makefile. Meine Güte was soll der Quatsch? -
Das ist kein Quatsch, das gehoert so[tm] ;-) Bei Verwendung eines Build-Directory befindet sich die Konfiguration des Kernels in diesem Directory und nicht im Kernel-Source Baum. Das hat Vorteile. Das Makefile im Build-Directory ist ein Wrapper, das letztendlich das Haupt-Makefile aus dem Kernel-Source Baum verwendet. Ist bei anderer Software uebrigens genau so - schon mal GCC selbst uebersetzt?
Soll jeder, der VMware unter Linux zum Laufen bekommen will oder mal eine Source compilieren will das alles kapieren? - Ich sehe es ist immer noch richtig in meinem Bekannten-Umfeld Windoof zu empfehlen, sonst muß ich denen noch das erklären. Es wird ja immer komlizierter von Kernel zu Kernel (ja, schön für die Kernel-freaks, wenn alles immer flexibler wird!)
Ich weiss nicht, was Du vorhast und warum Du ueberhaupt etwas von Hand am Kernel-Baum veraendern willst. Normalerweise ist das *nicht* noetig. Die korrekte Konfiguration des Kernels und der Header-Dateien sollte im original Build-Directory von SuSE (das ueber die RPMs installiert wird) vorhanden sein. Dementsprechend musst Du eigentlich weder eine Konfiguration klonen noch irgendwelche Header-Dateien generieren, Du musst die vorhandene Infrastruktur nur korrekt nutzen. Wenn das vmware-Skript korrekt funktioniert, sollte es dem Link "build" aus dem Module-Verzeichnis folgen und so das korrekte Verzeichnis und die korrekten Header-Dateien finden. Ich nehme daher an, dass entweder Dein Eingreifen von Hand oder eine falsche Angabe beim vmware-Skript zu Deinen Problemen fuehrt. Ich kann allerdings keine genaueren Auskuenfte geben, da ich kein vmware einsetze und das Skript nicht kenne.
Kann mir jmd nun sagen, wie ich den BUILD-Kram aus dem 2.6er wegbekomme?
Wuerde ich nicht empfehlen, da es diverse Vorteile hat. Wenn externe Kernel-Module die Kernel Infrastruktur (sprich: dessen Makefile etc.) nutzen, dann sollten sie mit einem Build-Directory umgehen koennen. Willst Du wirklich das Build-Directory umgehen, so musst Du den Kernel-Baum korrekt konfigurieren und die Links im Module-Verzeichnis anpassen. Das halte ich aber fuer die schlechtere Loesung. Cheers, Th. PS: Konfigurieren und Compilieren von Kerneln und Kernel-Modulen ist sicherlich *nicht* fuer einen normalen User gedacht und angeraten. Das ist die Aufgabe des Administrators, und der sollte sich dementsprechend auch auskennen. Ansonsten sollte/muss er Hilfe in Anspruch nehmen. Ich verstehe nicht, warum anscheinend so viele Leute meinen, Computer einrichten und administrieren ist fuer jedermann. Es kaeme doch auch nicht jeder auf die Idee, mal eben an seinem Auto den Zuendmechanismus neu zu konfigurieren und einzurichten... -- 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
* Thomas Hertweck schrieb:
Ich weiss nicht, was Du vorhast und warum Du ueberhaupt etwas von Hand am Kernel-Baum veraendern willst. Normalerweise ist das *nicht* noetig.
Soweit die Therie. Tatsache ist, daß mir ein YOU-Update, der den Kernel 2.4.8-24.19 gegen den 2.4.8-24.24 ausgetauscht hat, diese ganze Misere angefangen hat. Plötzlich war eben wohl ein "BUILD" in den Pfaden! Ich habe BUILD noch nie getippt, hier in dem thread das erste Mal.
Die korrekte Konfiguration des Kernels und der Header-Dateien sollte im original Build-Directory von SuSE (das ueber die RPMs installiert wird) vorhanden sein. Dementsprechend musst Du eigentlich weder eine Konfiguration klonen noch irgendwelche Header-Dateien generieren, Du musst die vorhandene Infrastruktur nur korrekt nutzen.
Wo kommt bei einem make cloneconfig ein BUILD rein? Oder gehts da raus? Wo kommt bei einem make prepare / make modules_prepare ein BUILD rein? Mehr habe ich nie gemacht. Daß ein BUILD drinnen war, hast Du sofort gesehen. Ich habe noch nie etwas mit BUILD kompiliert oder irgendwelche (eigenen) Makefiles verwendet. Und nachdem ich heute vormittag das gesamte /lib/modules geleert habe, ebenso das /usr/src/ und dann per --force die Suse-YOU-rpms einspielt habe, war wieder BUILD drinnen. Wie kommts? Von make cloneconfig? Von make prepare? Dann erst nachdem ich noch zweimal die Sourcen gelöscht hatte und mit --force nachinstalliert hatte, konnte ich Stückweise immer ein Source mehr kompilieren. Sehr merkwürdig, oder? Naja, ich weiß jetzt ja worauf ich achten muß und wenn ein BUILD weiß der Geier woher reinrutscht werde ich eben das BUILD mitangeben - hmmmm ... aber welches? Thomas, Dein zweites Posting enthält: [...]
make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules ^^^^^^^^^^^^^^^^^^^^^^^^^^ Nichts mehr von einem Build-Directory zu sehen! Du laeufst in eine [...]
Was hätte da denn stehen müssen, hier O=...? Ich finde kein BUILD- Verzeichnis in /usr/src/linux-2.6.8-24.19/ # find -name "BUILD" # Vielleicht einfacher Suse immer mal wieder neu zu installieren - so wie Windoof? - Bei den Kernel-Sourcen und bei Kompilierfehlern werde ich es jedenfalls so machen. Und dreimal hintereinander kann Wunder wirken, wie heute: plötzlich gehts. Gruss Ekkard -- 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
jetzt würde mich noch interessieren warum kein /usr/src/linux-2.6.8-24.19-obj/i386/default/Module.symvers erzeugt wird. Wie schon geschrieben: originalste Suse-rpm's, nur make cloneconfig und make prepare gemacht. Der Link: # ls /lib/modules/2.6.8-24.19-default/build -l lrwxrwxrwx 1 root root 43 2007-01-01 11:38 /lib/modules/2.6.8-24.19-default/build -> /usr/src/linux-2.6.8-24.19-obj/i386/default ist ja da. rex3:/usr/src # ls /usr/src/linux-2.6.8-24.19-obj/i386/default -l total 64 drwxr-xr-x 6 root root 192 Jan 1 12:58 . drwxr-xr-x 6 root root 144 Dec 6 2005 .. -rw-r--r-- 1 root root 57530 Dec 6 2005 .config -rw-r--r-- 1 root root 326 Dec 6 2005 Makefile drwxr-xr-x 3 root root 72 Dec 6 2005 arch drwxr-xr-x 4 root root 120 Jan 1 12:58 include drwxr-xr-x 2 root root 72 Jan 1 12:58 include2 drwxr-xr-x 6 root root 224 Jan 1 12:59 scripts Gruss Ekkard -- 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
Ekkard Gerlach wrote:
jetzt würde mich noch interessieren warum kein /usr/src/linux-2.6.8-24.19-obj/i386/default/Module.symvers erzeugt wird. Wie schon geschrieben: originalste Suse-rpm's, nur make cloneconfig und make prepare gemacht.
Wie kommst Du darauf, dass ein "make cloneconfig" und/oder "make prepare" genannte Datei erzeugt? Dem ist nicht so! Das Vorgehen ist in dieser Hinsicht auch komplett unnoetig, da sie bereits in SuSE Paketen enthalten ist, hier die letzte via YOU erhaeltliche Kernel-Version: $> rpm -qpl kernel-syms-2.6.8-24.25.i586.rpm /usr/src/linux-2.6.8-24.25-obj /usr/src/linux-2.6.8-24.25-obj/i386 /usr/src/linux-2.6.8-24.25-obj/i386/bigsmp /usr/src/linux-2.6.8-24.25-obj/i386/bigsmp/Module.symvers /usr/src/linux-2.6.8-24.25-obj/i386/default /usr/src/linux-2.6.8-24.25-obj/i386/default/Module.symvers /usr/src/linux-2.6.8-24.25-obj/i386/smp /usr/src/linux-2.6.8-24.25-obj/i386/smp/Module.symvers oder auch $> rpm -qpl kernel-default-2.6.8-24.25.i586.rpm | grep Module.symvers /usr/src/linux-2.6.8-24.25-obj/i386/default/Module.symvers Voila. Cheers, Th. -- 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
* Thomas Hertweck schrieb:
$> rpm -qpl kernel-default-2.6.8-24.25.i586.rpm | grep Module.symvers /usr/src/linux-2.6.8-24.25-obj/i386/default/Module.symvers
Jetzt bin ich platt: bei mir auch! Irgendwas löscht mir das Module.symvers!! rex3:/usr/src/linux # rpm -ql kernel-default-2.6.8-24.19 | gf Module.symvers /usr/src/linux-2.6.8-24.19-obj/i386/default/Module.symvers Habe nochmals kernel und sourcen per --force installiert, dann make cloneconfig (was ich ja nicht brauche, ok) und make modules_prepare (was ich auch nicht brauche, ok) - aber Module.symvers verschwindet nicht! Nach einem zusätzlichen make prepare habe ich dann wieder meine Endlosschleife, ABER das Module.symvers ist immer noch da!?! Verdammt ... ist hier ein Virus aktiv!?! Naja, ich habe ja jetzt ein Workaround für das Problem hier auf meinem PC. Das reicht auch. Danke! Gruss Ekkard -- 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
so gerade eben gemacht: rex3:/usr/src/linux # make modules_prepare CHK include/linux/version.h make[1]: `arch/i386/kernel/asm-offsets.s' is up to date. Dann DAS GLEICHE unmittelbar danach NOCHMAL: rex3:/usr/src/linux # make modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare [...] Und schon habe ich wieder den Rotz den mir Suse mit dem letzten YOU eingebrockt hat! Und wieder nirgendwo etwas kompilierbar! Überall diese Meldungen! So großer Meister Herteck, wie bekomme ich das weg? Gruss Ekkard -- 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
Ekkard Gerlach wrote:
so gerade eben gemacht:
rex3:/usr/src/linux # make modules_prepare CHK include/linux/version.h make[1]: `arch/i386/kernel/asm-offsets.s' is up to date.
Das ist kein sauberer Kernel-Baum, sonst wuerde die Ausgabe wesentlich laenger ausfallen. Du hast also bereits andere Befehle ausgefuehrt, die Du hier verschweigst! Hier ein Beispiel, wie es in einem sauberen Kernel-Baum aussehen sollte (ohne Build-Directory): tc01:/usr/src/linux-2.6.8-24.25 # make modules_prepare CHK include/linux/version.h UPD include/linux/version.h SYMLINK include/asm -> include/asm-i386 SPLIT include/linux/autoconf.h -> include/config/* HOSTCC scripts/genksyms/genksyms.o SHIPPED scripts/genksyms/lex.c SHIPPED scripts/genksyms/parse.h SHIPPED scripts/genksyms/keywords.c HOSTCC scripts/genksyms/lex.o SHIPPED scripts/genksyms/parse.c HOSTCC scripts/genksyms/parse.o HOSTLD scripts/genksyms/genksyms CC scripts/mod/empty.o HOSTCC scripts/mod/mk_elfconfig MKELF scripts/mod/elfconfig.h HOSTCC scripts/mod/file2alias.o HOSTCC scripts/mod/modpost.o HOSTCC scripts/mod/sumversion.o HOSTLD scripts/mod/modpost HOSTCC scripts/kallsyms HOSTCC scripts/pnmtologo HOSTCC scripts/conmakehash HOSTCC scripts/bin2c CC arch/i386/kernel/asm-offsets.s CHK include/asm-i386/asm_offsets.h UPD include/asm-i386/asm_offsets.h tc01:/usr/src/linux-2.6.8-24.25 #
Dann DAS GLEICHE unmittelbar danach NOCHMAL:
rex3:/usr/src/linux # make modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare [...]
Noe. tc01:/usr/src/linux-2.6.8-24.25 # make modules_prepare CHK include/linux/version.h make[1]: `arch/i386/kernel/asm-offsets.s' is up to date. tc01:/usr/src/linux-2.6.8-24.25 # make modules_prepare CHK include/linux/version.h make[1]: `arch/i386/kernel/asm-offsets.s' is up to date. tc01:/usr/src/linux-2.6.8-24.25 # make modules_prepare CHK include/linux/version.h make[1]: `arch/i386/kernel/asm-offsets.s' is up to date. Das kann ich stundenlang fortsetzen. Deine Installation und/oder Dein Vorgehen ist fehlerhaft.
[...] Und schon habe ich wieder den Rotz den mir Suse mit dem letzten YOU eingebrockt hat! Und wieder nirgendwo etwas kompilierbar! Überall diese Meldungen! So großer Meister Herteck, wie bekomme ich das weg?
Weisst Du, ich habe durchaus Verstaendnis fuer Deine Veraergerung, in gewissem Rahmen. Aber alles, was ich bisher gesehen habe, deutet auf Fehler Deinerseits und nicht auf Fehler von YOU oder SUSE hin. Du hast die Idee und Funktionsweise eines Build-Directories auch nachwievor nicht verstanden, glaube ich. Das als Rotz zu bezeichnen und dann auch noch Leute, die Dir helfen wollen, bloed anzumachen ("Meister Hertweck", wie das wohl heissen sollte), da verliere ich dann doch ganz schnell die Lust auf weitere Hilfe. Loese Deine Probleme doch besser alleine, da kannst Du Dich selbst auch so lange beschimpfen, wie es Dir beliebt... Cheers, Th. -- 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
* Thomas Hertweck schrieb:
Ekkard Gerlach wrote:
so gerade eben gemacht:
rex3:/usr/src/linux # make modules_prepare CHK include/linux/version.h make[1]: `arch/i386/kernel/asm-offsets.s' is up to date.
Das ist kein sauberer Kernel-Baum, sonst wuerde die Ausgabe wesentlich laenger ausfallen. Du hast also bereits andere Befehle ausgefuehrt, die Du hier verschweigst! Hier ein Beispiel, wie es in einem sauberen Kernel-Baum aussehen sollte (ohne Build-Directory):
tc01:/usr/src/linux-2.6.8-24.25 # make modules_prepare CHK include/linux/version.h UPD include/linux/version.h SYMLINK include/asm -> include/asm-i386 [...] beim ersten Mal passiert das auch bei mir so. Beim zweiten Mal ist es die Version oben und beim dritten Mal ist die Endlosschleife dran. Ich meine, das ist immer so.
Das kann ich stundenlang fortsetzen. Deine Installation und/oder Dein Vorgehen ist fehlerhaft. hmmm ... Ich installiere eben die Sourcen immer wieder neu. Einmal make modules_prepare kann ich ja machen, ein zweites Mal halt nicht. Damit kann ich leben, Suse 9.2 wird demnächst sowieso von 10.2 abgelöst.
Weisst Du, ich habe durchaus Verstaendnis fuer Deine Veraergerung, in gewissem Rahmen. Aber alles, was ich bisher gesehen habe, deutet auf Fehler Deinerseits und nicht auf Fehler von YOU oder SUSE hin. Du hast die Idee und Funktionsweise eines Build-Directories auch nachwievor nicht verstanden, glaube ich. Das als Rotz zu bezeichnen und dann auch noch Leute, die Dir helfen wollen, bloed anzumachen ("Meister Hertweck", Ich hatte das "w" verschluckt, sorry. Tut mir leid, es sollte eher Witz sein, es sollte eher eine Würdigung sein. Entschuldigung.
Tausend Dank, Thomas, ich kann wie gesagt mit dem feature leben. Ich kann mich mit solchen Sonderheiten auch nicht stundenlang beschäftigen. Gruss Ekkard -- 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
Ekkard Gerlach wrote:
[...]
rex3:/usr/src/linux # make modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare make -C /usr/src/linux-2.6.8-24.19 O=/usr/src/linux-2.6.8-24.19 modules_prepare
Letzter Nachtrag meinerseits: ich wette, wenn Du Dir nach diesem Vorgang (bzw. nachdem er abgebrochen wurde) das Kernel-Makefile unter /usr/src/linux anschaust, wird es sehr kurz ausfallen und nicht dem Kernel-Makefile des urspruenglichen Quell-Baums entsprechen. Vielleicht bringt Dich das ja zum Nachdenken. Das ist meine letzte Email in diesem Thread, mir ist wie in der anderen Email schon gesagt, die Lust zu helfen vergangen... Th. -- 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
Moin Thomas! On Monday, 01. January 2007 18:15, Thomas Hertweck wrote:
Nein, es ist kein Zufall. SuSE verwendet ein Build-Directory, dementsprechend ist das System (und sind die SuSE Kernel-RPMs) auch darauf ausgelegt. Insbesondere verweist der Link /lib/modules/`uname -r`/build nicht auf das Verzeichnis mit den Kernel-Quellen, sondern auf das separate Build-Directory.
Ich habe Deine Erklärungen mit Interesse verfolgt - privat verwende ich Gentoo und vermeide SuSE, aber hier am Arbeitsplatz setzen wir SuSE 10.0 ein und ich habe hier teilweise Kernel-Module übersetzen müssen. Gibt es zu "dem SuSE-Kernel-Vorgehen" eine öffentliche Dokumentation, die Du mir ans Herz legen kannst? Ansonsten habe ich folgende Fragen nach Deinen Ausführungen: Wenn ich es richtig verstanden habe, sollte im BUILD-Verzeichnis ein Wrapper-Makefile liegen, bei mir sind aber nur die Symbole: kogspc26:~ # cat /etc/SuSE-release SUSE LINUX 10.0 (i586) VERSION = 10.0 kogspc26:~ # rpm -qa|grep kernel kernel-source-2.6.13-15 kernel-smp-nongpl-2.6.13-15.13 kernel-update-tool-0.9-10 kernel-smp-2.6.13-15.13 kernel-syms-2.6.13-15 kogspc26:~ # uname -r 2.6.13-15.13-smp kkogspc26:~ # readlink /lib/modules/`uname -r`/build /usr/src/linux-2.6.13-15.13-obj/i386/smp kogspc26:~ # ll /usr/src/linux-2.6.13-15.13-obj/i386/smp total 260 drwxr-xr-x 2 root root 4096 Dec 20 16:47 . drwxr-xr-x 3 root root 4096 Dec 20 16:47 .. -rw-r--r-- 1 root root 250998 Dec 11 01:58 Module.symvers
Das ist korrekt fuer die Verwendung eines Build-Directories. Der Link zeigt auf das Build-Directory, das SuSE fuer den Standardkernel der i386 Architektur verwendet.
in /usr/src/linux-2.6.8-24.19-obj/i386/default erkenne ich dann auch wieder ein .config und ein Makefile. Meine Güte was soll der Quatsch? -
Das ist kein Quatsch, das gehoert so[tm] ;-) ...
Bei mir scheint das unvollständig zu sein; ich habe allerdings z.B. den gspca-Webcam-Treiber mit make KERNELDIR=/usr/src/linux-2.6.13-15-obj/i386/smp übersetzen können, denn dort (also ohne das .13) gibt es die gesuchten Dateien: kogspc26:~ # ll /usr/src/linux-2.6.13-15-obj/i386/smp total 348 drwxr-xr-x 6 root root 4096 Dec 22 13:31 . drwxr-xr-x 8 root root 4096 Sep 13 2005 .. -rw-r--r-- 1 root root 63130 Sep 13 2005 .config -rw-r--r-- 1 root root 327 Sep 13 2005 Makefile -rw-r--r-- 1 root root 250926 Sep 13 2005 Module.symvers drwxr-xr-x 3 root root 4096 Dec 20 17:13 arch drwxr-xr-x 4 root root 4096 Dec 20 17:13 include drwxr-xr-x 2 root root 4096 Dec 20 17:13 include2 drwxr-xr-x 6 root root 4096 Dec 20 17:13 scripts kogspc26:~ # ll /usr/src/linux-2.6.13-15.13-obj/i386/smp total 260 drwxr-xr-x 2 root root 4096 Dec 20 16:47 . drwxr-xr-x 3 root root 4096 Dec 20 16:47 .. -rw-r--r-- 1 root root 250998 Dec 11 01:58 Module.symvers kogspc26:~ # ll /usr/src/ total 28 drwxr-xr-x 7 root root 4096 Dec 20 17:14 . drwxr-xr-x 14 root root 4096 Dec 20 12:44 .. drwxr-xr-x 4 root root 4096 Dec 20 12:33 kernel-modules lrwxrwxrwx 1 root root 15 Dec 20 17:14 linux -> linux-2.6.13-15 drwxr-xr-x 19 root root 4096 Dec 20 17:13 linux-2.6.13-15 drwxr-xr-x 3 root root 4096 Sep 13 2005 linux-2.6.13-15-obj drwxr-xr-x 3 root root 4096 Dec 20 16:47 linux-2.6.13-15.13-obj lrwxrwxrwx 1 root root 19 Dec 20 17:14 linux-obj -> linux-2.6.13-15-obj drwxr-xr-x 7 root root 4096 Dec 20 12:48 packages
Build-Directory befindet sich die Konfiguration des Kernels in diesem Directory und nicht im Kernel-Source Baum. Das hat Vorteile. Das Makefile im Build-Directory ist ein Wrapper, das letztendlich das Haupt-Makefile aus dem Kernel-Source Baum verwendet. Ist bei anderer Software uebrigens genau so - schon mal GCC selbst uebersetzt?
Ich finde das Konzept separater Build-Directories auch sehr gut, allerdings habe auch ich Probleme mit SuSE derart, daß irgendetwas out-of-the-box wohl noch fehlt. Naja, beim gspca-Treiber konnte ich mir noch selber helfen, aber die NVIDIA-Treiber machen mir größere Probleme: sh /path/to/NVIDIA-Linux-x86-1.0-9746-pkg1.run -a -e -N 1.) Wie oben bekomme ich erstmal "ERROR: The kernel header file '/lib/modules/2.6.13-15.13-smp/build/include/linux/kernel.h' does not exist. The most likely reason for this is that the kernel source path '/lib/modules/2.6.13-15.13-smp/build' is incorrect. Please make sure you have installed the kernel source files for your kernel and that they are properly configured; on Red Hat Linux systems, for example, be sure you have the 'kernel-source' or 'kernel-devel' RPM installed. If you know the correct kernel source files are installed, you may specify the kernel source path with the '--kernel-source-path' command line option." 2.) Mit dem erprobten "--kernel-source-path=/usr/src/linux-2.6.13-15-obj/i386/smp" bekomme ich die gleiche Fehlermeldung - der NVIDIA-Installer erwartet offensichtlich wirklich das kernel.h in dem Kernel(build)baum. 3.) Mit "--kernel-source-path=/usr/src/linux-2.6.13-15" schafft er es tatsächlich, das Modul zu übersetzen, aber scheitert danach an /bin/sh: scripts/basic/fixdep: No such file or directory wie man in /var/log/nvidia-installer.log nachlesen kann. Oh, und natürlich "WARNING: Symbol version dump /usr/src/linux-2.6.13-15/Module.symvers is missing; modules will have no dependencies and modversions." aber man kann ja nicht alles haben.. ;-) Sieht so aus, als ob der Installer nicht für builddir != srcdir gemacht wäre, aber auch für sowas gibt es doch bestimmt eine Lösung, oder? (War das eigentlich bei SuSE 9.0 noch anders? Da hatten wir die Probleme AFAIK nie.) Würde mich über die Antwort eines Profis sehr freuen, schöne Grüße! -- Ciao, / / /--/ / / ANS -- 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
Hallo! Hans Meine wrote:
Ich habe Deine Erklärungen mit Interesse verfolgt - privat verwende ich Gentoo und vermeide SuSE, aber hier am Arbeitsplatz setzen wir SuSE 10.0 ein und ich habe hier teilweise Kernel-Module übersetzen müssen. Gibt es zu "dem SuSE-Kernel-Vorgehen" eine öffentliche Dokumentation, die Du mir ans Herz legen kannst?
Oeffentlich oder offiziell? ;-) a) http://www.suse.de/~agruen/kernel-doc/ Das entspricht der Doku, die Du vermutlich auch unter /usr/share/doc/packages/kernel-source/ auf Deinem System findest und auf die /usr/src/linux/README.SUSE verweist (sofern Du SuSE Kernel-Quellen verwendest). b) /usr/src/linux/Documentation/kbuild/ Offizielle Infos zum Kernel Build-System und Prozess, auch Teil der Vanilla Kernel-Quellen. Deckt allerdings keine SuSE-spezifischen Anpassungen ab. c) http://www.thomashertweck.de/kernel26.html Meine eigene Doku zum Bau von Kerneln auf SuSE-Systemen, technisch vermutlich nicht ganz so anspruchsvoll und ausgereift wie die andere oben erwaehnte Dokumentation, aber vielleicht trotzdem ein Blick wert.
Ansonsten habe ich folgende Fragen nach Deinen Ausführungen: Wenn ich es richtig verstanden habe, sollte im BUILD-Verzeichnis ein Wrapper-Makefile liegen, bei mir sind aber nur die Symbole:
Ja, das hast Du richtig verstanden. $> cd /usr/src/linux-2.6.13-15.13-obj/i386/default $> ls -l total 272 drwxr-xr-x 3 root root 4096 2006-12-23 13:46 arch drwxr-xr-x 5 root root 4096 2007-01-01 19:26 include drwxr-xr-x 2 root root 4096 2007-01-01 19:26 include2 -rw-r--r-- 1 root root 343 2007-01-01 19:26 Makefile -rw-r--r-- 1 root root 251325 2006-12-11 01:30 Module.symvers drwxr-xr-x 6 root root 4096 2007-01-01 19:27 scripts Wundere Dich nicht ueber die Zeitstempel, das mag bei Dir anders aussehen.
kogspc26:~ # cat /etc/SuSE-release SUSE LINUX 10.0 (i586) VERSION = 10.0
kogspc26:~ # rpm -qa|grep kernel kernel-source-2.6.13-15 kernel-smp-nongpl-2.6.13-15.13 kernel-update-tool-0.9-10 kernel-smp-2.6.13-15.13 kernel-syms-2.6.13-15
Deine Kernel-Quellen passen nicht zum Kernel! Du hast SMP Kernel 2.6.13-15.13 installiert, aber ungepatchte Kernel-Quellen, da hier die Angabe lediglich 2.6.13-15 ist. Bei mir (ebenfalls SuSE 10.0) sieht das wie folgt aus: $> rpm -q kernel-source kernel-default kernel-source-2.6.13-15.13 kernel-default-2.6.13-15.13 Beachte die Versions- und Build-Nummern der Pakete, die hier bei mir uebereinstimmen. Hast Du die Kernel-Quellen nachtraeglich installiert und vergessen, ein weiteres Mal YOU aufzurufen?
kogspc26:~ # uname -r 2.6.13-15.13-smp
kkogspc26:~ # readlink /lib/modules/`uname -r`/build /usr/src/linux-2.6.13-15.13-obj/i386/smp
Das ist das zugehoerige Build-Directory, in dem...
kogspc26:~ # ll /usr/src/linux-2.6.13-15.13-obj/i386/smp total 260 drwxr-xr-x 2 root root 4096 Dec 20 16:47 . drwxr-xr-x 3 root root 4096 Dec 20 16:47 .. -rw-r--r-- 1 root root 250998 Dec 11 01:58 Module.symvers
...sich normalerweise ein Makefile befinden sollte. $> rpm -ql kernel-source-2.6.13-15.13 | grep Makefile | grep -- -obj /usr/src/linux-2.6.13-15.13-obj/i386/bigsmp/Makefile /usr/src/linux-2.6.13-15.13-obj/i386/debug/Makefile /usr/src/linux-2.6.13-15.13-obj/i386/default/Makefile /usr/src/linux-2.6.13-15.13-obj/i386/smp/Makefile Siehe die letzte Zeile dieser Ausgabe. Das waere das fuer Dich passende Makefile.
[...] Bei mir scheint das unvollständig zu sein; ich habe allerdings z.B. den gspca-Webcam-Treiber mit make KERNELDIR=/usr/src/linux-2.6.13-15-obj/i386/smp übersetzen können, denn dort (also ohne das .13) gibt es die gesuchten Dateien:
Siehe obige Bemerkung zu Deinen Kernel-Quellen. Sie sind nicht auf die letzte verfuegbare Version gepatcht und passen nicht zu der Versionsnummer Deines momentan verwendeten Kernels. Das ist das primaere Problem, das Du loesen solltest. Es erklaert auch, warum Du im alten Verzeichnis...
kogspc26:~ # ll /usr/src/linux-2.6.13-15-obj/i386/smp total 348 drwxr-xr-x 6 root root 4096 Dec 22 13:31 . drwxr-xr-x 8 root root 4096 Sep 13 2005 .. -rw-r--r-- 1 root root 63130 Sep 13 2005 .config -rw-r--r-- 1 root root 327 Sep 13 2005 Makefile -rw-r--r-- 1 root root 250926 Sep 13 2005 Module.symvers drwxr-xr-x 3 root root 4096 Dec 20 17:13 arch drwxr-xr-x 4 root root 4096 Dec 20 17:13 include drwxr-xr-x 2 root root 4096 Dec 20 17:13 include2 drwxr-xr-x 6 root root 4096 Dec 20 17:13 scripts
...einen vollstaendigen Satz an Dateien hast, im neuen Verzeichnis...
kogspc26:~ # ll /usr/src/linux-2.6.13-15.13-obj/i386/smp total 260 drwxr-xr-x 2 root root 4096 Dec 20 16:47 . drwxr-xr-x 3 root root 4096 Dec 20 16:47 .. -rw-r--r-- 1 root root 250998 Dec 11 01:58 Module.symvers
...aber nicht, weil das zugehoerige Kernel-Source Paket nicht installiert wurde! Die hier gezeigte Datei Module.symvers kommt aus dem Paket kernel-syms, was bei Dir anscheinend in der richtigen Version vorliegt. Fazit: rufe YOU erneut auf und update auch die Kernel-Quellen. YOU sollte das automatisch machen. Falls nicht, dann musst Du von Hand eingreifen.
[...] Ich finde das Konzept separater Build-Directories auch sehr gut, allerdings habe auch ich Probleme mit SuSE derart, daß irgendetwas out-of-the-box wohl noch fehlt.
Siehe oben. Die genannten Probleme mit dem NVIDIA-Treiber sollten verschwinden, sobald Du das korrekte Kernel-Source Paket installiert hast (kernel-source-2.6.13-15.13 - die .13 am Ende beachten!)
[...] Sieht so aus, als ob der Installer nicht für builddir != srcdir gemacht wäre, aber auch für sowas gibt es doch bestimmt eine Lösung, oder?
Das NVIDIA Treiberpaket kann AFAIK mit einem Build-Directory umgehen, es ist lediglich momentan so, dass Dein System inkonsistent ist ;-) Gruesse, Thomas -- 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
Moin nochmal! (Etwas verzögert, weil ich kurz nach Deiner Mail Vater geworden bin. :-)) ) On Tuesday, 02. January 2007 20:44, Thomas Hertweck wrote:
kogspc26:~ # rpm -qa|grep kernel kernel-source-2.6.13-15 kernel-smp-nongpl-2.6.13-15.13 kernel-update-tool-0.9-10 kernel-smp-2.6.13-15.13 kernel-syms-2.6.13-15
Deine Kernel-Quellen passen nicht zum Kernel! Du hast SMP Kernel 2.6.13-15.13 installiert, aber ungepatchte Kernel-Quellen, da hier die Angabe lediglich 2.6.13-15 ist. Du meinst kernel-syms? Oder gar kernel-source? Beide habe ich nicht als -15.13 gefunden. :-(
Bei mir (ebenfalls SuSE 10.0) sieht das wie folgt aus:
$> rpm -q kernel-source kernel-default kernel-source-2.6.13-15.13 kernel-default-2.6.13-15.13 Ah, interessant.
Danke für Deine Hilfe, ich habe jetzt verstanden, was bei uns falsch ist.
Beachte die Versions- und Build-Nummern der Pakete, die hier bei mir uebereinstimmen. Hast Du die Kernel-Quellen nachtraeglich installiert und vergessen, ein weiteres Mal YOU aufzurufen? Ich weiß nicht, ob YOU bei uns jemals gelaufen ist. Brauche ich das zwingend? Hmm, sieht nicht so aus als ob, und es listet mir auch jede Menge Pakete auf. (Ich lasse das jetzt nicht durchlaufen, weil ich a) eigentlich kein Administrator bin und b) ich die Rechner nicht in unterschiedliche Zustände bringen will.)
Fazit: rufe YOU erneut auf und update auch die Kernel-Quellen. YOU sollte das automatisch machen. Falls nicht, dann musst Du von Hand eingreifen. Wir lassen AFAIK nur fou4s laufen, und das scheint nicht zu helfen:
fou4s -u --checkfou4s fou4s -e fou4s -i fou4s -i --interactive Mit folgender Konfiguration (OK, der Kommentar sieht verdächtig aus ;-) hat aber hoffentlich nichts damit zu tun): # egrep -v '^#|^ *$' /etc/fou4s.conf Server=ftp://ftp.gwdg.de/pub/linux/suse/ftp.suse.com/suse CacheDir=/var/cache/fou4s Auto=fou4s # don't forget to enable CheckFou4s, too! ColorOutput=0 InverseColor=1 -- Ciao, / / /--/ / / ANS -- 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
Hallo! Hans Meine wrote:
[...] (Etwas verzögert, weil ich kurz nach Deiner Mail Vater geworden bin. :-)) )
Ich gratuliere herzlich und hoffe, der Schlafmangel haelt sich bisher in Grenzen... ;-)
[...] Ich weiß nicht, ob YOU bei uns jemals gelaufen ist. Brauche ich das zwingend?
Die DVD kommt mit konsistenten Paketen daher. Da auf dem System, wie Du es praesentiert hast, die Pakete inkonsistent waren, muss also jemand per YOU oder anderer Software oder per Hand neue Pakete installiert haben - da fuehrt kein Weg dran vorbei. Wie ihr eure Systeme wartet und wer das getan haben koennte, kann ich natuerlich nicht sagen. YOU ist das YaST Online Update, mit dem Sicherheitspatches/Bugfixes fuer installierte Software eingespielt werden kann. Falls der genannte Rechner Netzwerkverbindungen "nach draussen" hat, waere es u.U. keine so schlechte Idee, von Zeit zu Zeit die Sicherheitspatches und Bugfixes einzuspielen ("nach draussen" meint in diesem Falle eine Netzwerk, dem man nicht 100% vertrauen kann, das muss also ggf. nicht mal das grosse weite Web sein.).
Hmm, sieht nicht so aus als ob, und es listet mir auch jede Menge Pakete auf.
Das ist zu erwarten, wenn Du noch nie ein Update hast laufen lassen.
(Ich lasse das jetzt nicht durchlaufen, weil ich a) eigentlich kein Administrator bin und b) ich die Rechner nicht in unterschiedliche Zustände bringen will.)
Verstaendlich, aber ihr (als Gruppe) solltet mal darueber nachdenken, wie ihr in Zukunft Security/Bug-Fixes handhaben wollt und wer genau Rechte hat, Software im System zu installieren, etc.
[...] Wir lassen AFAIK nur fou4s laufen, und das scheint nicht zu helfen: [...]
Ich kenne fou4s nicht. Laut Beschreibung, "Fou4s is a replacement for SuSE's Yast OnlineUpdate (YOU). It uses the same update description files and is therefore a complete, lightweight alternative." sollte es aber die gleiche Aufgabe wie YOU erfuellen koennen. Da Du schreibst, dass YOU sehr viele Patches anzeigt, die zu installieren waeren, deutet das darauf hin, dass euer fou4s-Mechanismus nicht so ganz zu funktionieren scheint. Mehr kann man dazu aus der Ferne wohl nicht sagen, zumal einige der Punkte, die hier eine Rolle spielen, auch schlicht mit eurer hausinternen Systemadministration zu tun haben... Gruesse aus London, Thomas -- 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
Moin! On Thursday 11 January 2007 22:39, Thomas Hertweck wrote:
Die DVD kommt mit konsistenten Paketen daher. Da auf dem System, wie Du es praesentiert hast, die Pakete inkonsistent waren, muss also jemand per YOU oder anderer Software oder per Hand neue Pakete installiert haben - da fuehrt kein Weg dran vorbei. ..ja, da habe ich fou4s im Verdacht.
YOU ist das YaST Online Update, mit dem Sicherheitspatches/Bugfixes fuer installierte Software eingespielt werden kann. Falls der genannte Rechner Netzwerkverbindungen "nach draussen" hat, waere es u.U. keine so schlechte Idee, von Zeit zu Zeit die Sicherheitspatches und Bugfixes einzuspielen ("nach draussen" meint in diesem Falle eine Netzwerk, dem man nicht 100% vertrauen kann, das muss also ggf. nicht mal das grosse weite Web sein.). Richtig, und AFAICS sollte fou4s das wohl tun. Sieht so aus, als müssten wir auf YOU umsteigen - ich muß unseren (leider gegangenen, ehemals) verantwortlichen Sysadmin wohl mal fragen, warum er fou4s bevorzugt zu haben scheint.
Wir lassen AFAIK nur fou4s laufen, und das scheint nicht zu helfen: [...]
Ich kenne fou4s nicht. Laut Beschreibung, "Fou4s is a replacement for SuSE's Yast OnlineUpdate (YOU). It uses the same update description files and is therefore a complete, lightweight alternative." sollte es aber die gleiche Aufgabe wie YOU erfuellen koennen. ..das habe ich ebenfalls der Manpage entnommen, aber...
Da Du schreibst, dass YOU sehr viele Patches anzeigt, die zu installieren waeren, deutet das darauf hin, dass euer fou4s-Mechanismus nicht so ganz zu funktionieren scheint. ..zu diesem Schluß bin ich dann auch gekommen.
Mehr kann man dazu aus der Ferne wohl nicht sagen, zumal einige der Punkte, die hier eine Rolle spielen, auch schlicht mit eurer hausinternen Systemadministration zu tun haben... Vielen Dank für Deine Hilfe. Nach dem Riesen-Thread über yast/rpm/apt/smart/... befürchtete ich schon, daß das gleiche mit YOU/fou4s/... weitergeht, aber wenn YOU die offizielle Lösung ist, sollten wir vielleicht darauf (zurück?)umsteigen.
Ciao, / / .o. /--/ ..o / / ANS ooo
Hans Meine wrote:
[...] Nach dem Riesen-Thread über yast/rpm/apt/smart/... befürchtete ich schon, daß das gleiche mit YOU/fou4s/... weitergeht, aber wenn YOU die offizielle Lösung ist, sollten wir vielleicht darauf (zurück?)umsteigen.
Nun, wie unter Unix/Linux ueblich, gibt es mehrere Wege, eine Aufgabe zu loesen - das betrifft auch das Einspielen von Security Fixes. Man muss eben sicherstellen, dass der eingeschlagene Weg auch funktioniert - das ist bei euch mit fou4s anscheinend momentan nicht der Fall. Ihr koennt also entweder ueberpruefen, was bei euch nicht geht und ggf. das Problem beheben, oder ihr schlagt einen anderen Weg ein und versucht etwas Neues. Soweit ich weiss, kann auch YOU so konfiguriert werden, dass es Updates mehr oder weniger vollautomatisch installiert - ob das immer gewuenscht ist, ist allerdings eine andere Frage. It's all up to YOU (kleines Wortspiel ;-)). Take care, Th. -- 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
Moin noch ein (letztes?) Mal! On Monday, 15. January 2007 20:59, Thomas Hertweck wrote:
Hans Meine wrote:
[...] Nach dem Riesen-Thread über yast/rpm/apt/smart/... befürchtete ich schon, daß das gleiche mit YOU/fou4s/... weitergeht, aber wenn YOU die offizielle Lösung ist, sollten wir vielleicht darauf (zurück?)umsteigen.
Nun, wie unter Unix/Linux ueblich, gibt es mehrere Wege, eine Aufgabe zu loesen - das betrifft auch das Einspielen von Security Fixes. Man muss eben sicherstellen, dass der eingeschlagene Weg auch funktioniert - das ist bei euch mit fou4s anscheinend momentan nicht der Fall.
Ich habe das Problem gefunden: fou4s zeigt folgendes: kernel-source 2.6.13-15.13 (2.6.13-15 ) [ok] security 41882kb NOTE: Package kernel-source contains pre-install information. You must install it using fou4s -i --interactive kernel-syms 2.6.13-15.13 (2.6.13-15 ) [ok] security 541kb NOTE: Package kernel-syms contains pre-install information. You must install it using fou4s -i --interactive M.a.W., diese beiden Pakete (und nur diese) wurden bei uns nicht geupdated, weil SuSE eine "pre-install information" eingebaut hat, die man sich angucken darf, und die einen mehr oder weniger darüber informiert, daß der Computer neu gestartet werden muß, damit der neue Kernel aktiv wird. ;-( Man muß fou4s im interaktiven Modus ausführen, was wir allerdings einmal bei der Installation gemacht haben sollten. Offensichtlich menschliches Versagen. Die von mir erwähnte "Riesen-Liste" mit Patches war wie unser Ex-Admin schon erwähnte nur so riesig, weil YOU auch irrelevante Patches anzeigt, die die bei uns installierte Software gar nicht betreffen. -- Ciao, / / /--/ / / ANS -- 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
participants (3)
-
Ekkard Gerlach
-
Hans Meine
-
Thomas Hertweck