Ubuntu 12.04 kann nicht auf Kernel 3.4 aktualisiert werden

8

Letzte Nacht wollte ich meinen Kernel von 3.2 0-24 auf 3.4 aktualisieren ... Ich habe die Anweisungen dazu befolgt. Kann ich den Linux-Kernel im Ubuntu-Appart des Standard-Kernels installieren? .

Zuerst habe ich die Kernel-Deb-Dateien auf dieser http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.4-precise/ heruntergeladen.

Führen Sie dann den ersten Befehl auf dem Terminal aus

sudo dpkg -i linux-headers-3.4.0-030400_3.4.0-030400.201205210521_all.deb

und wahrscheinlich ist es erfolgreich, dies ist die Ausgabe:

(Reading database ... 402527 files and directories currently installed.)
Preparing to replace linux-headers-3.4.0-030400 3.4.0-030400.201205210521 (using linux-headers-3.4.0-030400_3.4.0-030400.201205210521_all.deb) ...
Unpacking replacement linux-headers-3.4.0-030400 ...
Setting up linux-headers-3.4.0-030400 (3.4.0-030400.201205210521) ...

Also führe ich den zweiten Befehl aus

sudo dpkg -i linux-headers-3.4.0-030400-generic-pae_3.4.0-030400.201205210521_i386.deb

und die Ausgabe ist hier:

(Reading database ... 402527 files and directories currently installed.)
Preparing to replace linux-headers-3.4.0-030400-generic-pae 3.4.0-030400.201205210521 (using linux-headers-3.4.0-030400-generic-pae_3.4.0-030400.201205210521_i386.deb) ...
Unpacking replacement linux-headers-3.4.0-030400-generic-pae ...
Setting up linux-headers-3.4.0-030400-generic-pae (3.4.0-030400.201205210521) ...
Examining /etc/kernel/header_postinst.d.
run-parts: executing /etc/kernel/header_postinst.d/dkms 3.4.0-030400-generic-pae /boot/vmlinuz-3.4.0-030400-generic-pae
ERROR (dkms apport): kernel package linux-headers-3.4.0-030400-generic-pae is not supported
Error! Bad return status for module build on kernel: 3.4.0-030400-generic-pae (i686)
Consult /var/lib/dkms/fglrx-updates/8.960/build/make.log for more information.

Als ich Fehler in dieser Ausgabe sah, hörte ich auf weiterzumachen ... Ich suche bereits in Mr.Google, auf dieser Website, in Ubuntu-Foren und in allen Blogs, die sich auf dieses Problem beziehen, aber ich habe keine Lösung gefunden ... Der einzige Hinweis ist vielleicht mein ati Der fglrx-Treiber kann nicht mit Kernel 3.4 arbeiten

Ich beabsichtige weiterhin, den Kernel auf die Version 3.4 zu aktualisieren, da ich der Meinung bin, dass mein Laptop auch nach einer Problemumgehung mit Laptop-Modus-Tools, Jupiter, Hinzufügen der Kernel-Boot-Option acpi_osi = Linux usw. unter Windows 7 immer noch mit Kernel 3.2 heizt Betriebssystem mein Laptop lief viel cooler ..

Gibt es jemanden, der eine Lösung für mein Problem vorschlagen könnte? Wie kann man dieses Problem richtig lösen?

Zu Ihrer Information, dies ist meine Laptop-Spezifikation:

  • ASUS A42JK mit Intel® Core ™ i3-CPU M 350 bei 2,27 GHz × 4
  • 2 GB Speicher
  • ATI Mobility Radeon HD 5145

und die installierte fglrx-Treiberversion, wenn ich fglrxinfo ausführe

display: :0.0  screen: 0
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: ATI Mobility Radeon HD 4500 Series
OpenGL version string: 3.3.11627 Compatibility Profile Context

Dies ist auch der Inhalt von /var/lib/dkms/fglrx-updates/8.960/build/make.log:

DKMS make.log for fglrx-updates-8.960 for kernel 3.4.0-030400-generic-pae (i686)
Kam Jun  7 17:04:31 WIT 2012
/usr/sbin/dkms: line 73: cd: /var/lib/dkms/fglrx/8.960/build: No such file or directory
AMD kernel module generator version 2.1
doing Makefile based build for kernel 2.6.x and higher
rm -rf *.c *.h *.o *.ko *.a .??* *.symvers
make -C /lib/modules/3.4.0-030400-generic-pae/build SUBDIRS=/var/lib/dkms/fglrx-updates/8.960/build/2.6.x modules
make[1]: Entering directory `/usr/src/linux-headers-3.4.0-030400-generic-pae'
  CC [M]  /var/lib/dkms/fglrx-updates/8.960/build/2.6.x/firegl_public.o
/var/lib/dkms/fglrx-updates/8.960/build/2.6.x/firegl_public.c: In function ‘kasInitExecutionLevels’:
/var/lib/dkms/fglrx-updates/8.960/build/2.6.x/firegl_public.c:4184:5: error: ‘cpu_possible_map’ undeclared (first use in this function)
/var/lib/dkms/fglrx-updates/8.960/build/2.6.x/firegl_public.c:4184:5: note: each undeclared identifier is reported only once for each function it appears in
/var/lib/dkms/fglrx-updates/8.960/build/2.6.x/firegl_public.c:4184:5: warning: left-hand operand of comma expression has no effect [-Wunused-value]
/var/lib/dkms/fglrx-updates/8.960/build/2.6.x/firegl_public.c: In function ‘KCL_fpu_begin’:
/var/lib/dkms/fglrx-updates/8.960/build/2.6.x/firegl_public.c:5839:5: error: implicit declaration of function ‘__thread_has_fpu’ [-Werror=implicit-function-declaration]
/var/lib/dkms/fglrx-updates/8.960/build/2.6.x/firegl_public.c:5840:9: error: implicit declaration of function ‘__save_init_fpu’ [-Werror=implicit-function-declaration]
cc1: some warnings being treated as errors
make[2]: *** [/var/lib/dkms/fglrx-updates/8.960/build/2.6.x/firegl_public.o] Error 1
make[1]: *** [_module_/var/lib/dkms/fglrx-updates/8.960/build/2.6.x] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.4.0-030400-generic-pae'
make: *** [kmod_build] Error 2
build failed with return value 2

Danke = D.

AKTUALISIEREN

@ John S Gruber: Hallo John, letzte Nacht habe ich Ihren Vorschlag ausprobiert. Ich habe zuerst den fglrx-Treiber entfernt und dann erfolgreich auf 3.4 aktualisiert. Dann kam ein weiteres Problem mit meiner ati-Grafikkarte. Vor dem Neustart versuche ich, den kostenlosen Open Source-Treiber zu installieren Von Repo mit Jockey GTK versuche ich zuerst, das Post-Release-Update zu installieren, aber es ist fehlgeschlagen, dann versuche ich das zweite und es scheint erfolgreich zu sein und es gibt keinen Fehler, also starte ich neu. Nach dem Neustart wurde der Plymouth nicht angezeigt und nach der Anmeldung in meinem Desktop auf Unity 2D geändert, also überprüfe ich die fglrx

fglrxinfo
X Error of failed request:  BadRequest (invalid request code or no such operation)
Major opcode of failed request:  138 (ATIFGLEXTENSION)
Minor opcode of failed request:  66 ()
Serial number of failed request:  13
Current serial number in output stream:  13

Mein ati-Treiber scheint also nicht richtig installiert zu sein, und mein Laptop wurde so heiß wie 70 Grad Celsius und wird immer heißer ... Dann versuche ich, den ATI-Treiber von der AMD-Website zu installieren, aber er ist fehlgeschlagen und endete genau wie beim Versuch, den zu installieren 3.4 Kernel, der Kernel funktioniert nicht mit dem Binärtreiber. Dann entferne ich die fglrx mithilfe der Anleitung von hier http://wiki.cchtml.com/index.php/Ubuntu_Oneiric_Installation_Guide#Removing_Catalyst.2Ffglrx und führe diesen Befehl aus

sudo apt-get remove --purge fglrx fglrx_* fglrx-amdcccle* fglrx-dev*
sudo apt-get remove --purge xserver-xorg-video-ati xserver-xorg-video-radeon
sudo apt-get install xserver-xorg-video-ati
sudo apt-get install --reinstall libgl1-mesa-glx libgl1-mesa-dri xserver-xorg-core
sudo mv /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
sudo rm -rf /etc/ati

Neustart und mein 3D wurde wieder ohne fglrx-Treiber funktioniert, nur mit dem Mesa-Treiber, aber mein Laptop heizt sich weiter auf ... Ich suchte auf Google und kam über diesen Link http://ubuntuforums.org/showthread.php?t=1988444 an , der dort stand ist ein Patch, mit dem fglrx auf Kernel 3.4 funktioniert, und ich probiere die Lösungen aus, aber der Kernel weigerte sich erneut, den fglrx-Treiber zu installieren, selbst wenn er einen Patch von diesem Link http://ati.cchtml.com/attachment.cgi?id verwendet = 464 Ich habe erneut versucht, den Treiber mehrmals zu installieren, wobei mehrere Bereinigungen und mehrere Neustarts immer noch gleich waren. Dieser Fehler wird immer in /var/lib/dkms/fglrx/8.961/build/make.log angezeigt

DKMS make.log for fglrx-8.961 for kernel 3.4.0-030400-generic-pae (i686)
Sab Jun 16 07:21:16 WIT 2012
AMD kernel module generator version 2.1
doing Makefile based build for kernel 2.6.x and higher
rm -rf *.c *.h *.o *.ko *.a .??* *.symvers
make -C /lib/modules/3.4.0-030400-generic-pae/build SUBDIRS=/var/lib/dkms/fglrx/8.961/build/2.6.x modules
make[1]: Entering directory `/usr/src/linux-headers-3.4.0-030400-generic-pae'
  CC [M]  /var/lib/dkms/fglrx/8.961/build/2.6.x/firegl_public.o
/var/lib/dkms/fglrx/8.961/build/2.6.x/firegl_public.c: In function ‘kasInitExecutionLevels’:
/var/lib/dkms/fglrx/8.961/build/2.6.x/firegl_public.c:4157:5: error: ‘cpu_possible_map’ undeclared (first use in this function)
/var/lib/dkms/fglrx/8.961/build/2.6.x/firegl_public.c:4157:5: note: each undeclared identifier is reported only once for each function it appears in
/var/lib/dkms/fglrx/8.961/build/2.6.x/firegl_public.c:4157:5: warning: left-hand operand of comma expression has no effect [-Wunused-value]
/var/lib/dkms/fglrx/8.961/build/2.6.x/firegl_public.c: In function ‘KCL_fpu_begin’:
/var/lib/dkms/fglrx/8.961/build/2.6.x/firegl_public.c:5812:5: error: implicit declaration of function ‘__thread_has_fpu’ [-Werror=implicit-function-declaration]
/var/lib/dkms/fglrx/8.961/build/2.6.x/firegl_public.c:5813:9: error: implicit declaration of function ‘__save_init_fpu’ [-Werror=implicit-function-declaration]
cc1: some warnings being treated as errors
make[2]: *** [/var/lib/dkms/fglrx/8.961/build/2.6.x/firegl_public.o] Error 1
make[1]: *** [_module_/var/lib/dkms/fglrx/8.961/build/2.6.x] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.4.0-030400-generic-pae'
make: *** [kmod_build] Error 2
build failed with return value 2

Nach dieser langen Nacht und ohne Lösungen wechselte ich zurück zu Kernel 3.2 ... Kann mir niemand eine Lösung für Kernel 3.4 geben? Entschuldigung für die Unannehmlichkeiten auf dem Link mit *, ich beschränke mich darauf, nur 2 Hyperlinks zu posten. Danke für die Sorge, ich schätze es.

udin.elovers
quelle
Ich bin froh, dass du es installiert und ausprobiert hast. Es tut mir leid, dass 3.4 Ihre Hitzeprobleme nicht gelöst hat. Ich fürchte, mein AMD / ATI-Laptop (Toshiba) läuft auch ziemlich warm, besonders wenn ich Vollbildvideos mache (manchmal etwa 80 ° C). Ich würde allerdings hoffen, dass Ihr neuerer cooler wird. Ich würde vorschlagen, dass Sie eine neue Frage zum Thema Hitze starten und diese Frage zum Testen von Kerneln belassen. Das Durchsuchen von Artikeln mit dem Tag ACPI kann sich als nützlich erweisen. Ich sehe aus Ihrer Frage, dass Sie damit experimentiert haben. ACPI ist der Mechanismus, bei dem der Computer dem Betriebssystem mitteilt, wie heiß es ist und wie seine Lüfter betrieben werden.
John S Gruber
Leider ist der beste (und nur unterstützte) Weg, 3.4 auszuführen, das Warten auf Quantal (12.10), aber mir ist klar, dass Sie nicht darauf gehofft haben.
John S Gruber
Ich benutze nur den im Linux-Kernel installierten ATI-Treiber, sonst muss nichts installiert werden. Ich denke, die X-Nachricht, die Sie erhalten haben, betraf einige 3D-Operationen (Der GLEXTENSION-Teil des Strings). Dies kann bedeuten, dass der Treiber in Ordnung installiert wurde, aber noch nicht genug über Ihre Hardware weiß, um zu wissen, wie 3D ausgeführt wird. Dies sind nur Vermutungen, verlassen Sie sich also nicht auf sie.
John S Gruber
Danke John, ich werde Ihren Vorschlag annehmen, und da es sich bei dem
Fragentitel

Antworten:

6

Es scheint mir, dass es fglrx ist, der proprietäre ATI-Binärtreiber, der nicht mit dem 3.4-Kernel kompatibel ist. dkms versucht, die Header für die Schnittstelle zu verarbeiten. Ich gehe davon aus, dass versucht wird, ein Schnittstellenmodul zu kompilieren.

Dies ist in gewissem Maße sinnvoll, da Ubuntu irgendwann im Entwicklungszyklus neue Herstellertreiber für neue Versionen erhält und 3.4 nicht in einer Ubuntu-Produktionsversion enthalten ist. Ich glaube, die Website des Ubuntu-Kernel-Teams erwähnt, dass nur binäre Treiber möglicherweise nicht mit diesen Paketen kompatibel sind.

Da Sie experimentieren, würde ich vorschlagen, dass Sie den fglrx-Treiber entfernen und die Standard-Radeon-Treiber in Ihrem aktuellen System verwenden und dann das Update erneut versuchen. Ohne fglrx sollte es keinen dkms-Hook geben, um irgendetwas mit fglrx zu tun zu haben.

Nachdem Sie es in Gang gebracht haben, können Sie in den Quantenarchiven nach einem aktuelleren fglrx-Paket suchen, das mit dem 3.4-Kernel kompatibel ist. Dann sind Sie wirklich auf dem neuesten Stand (oder wirklich auf einem Ast).

Möglicherweise funktionieren Nvidia-Treiber auch nicht mit dem Mainline-Kernel für das, was jemand mit einem proprietären nvidia-Treiber getan hat.

Wenn es eine Ermutigung ist, konnte ich in der letzten Woche für eine Weile auf 3.5 upgraden, aber ich führe kein fglrx aus. Ich musste ein libllvm-Paket neu installieren, damit Unity-3d funktioniert, und habe nie herausgefunden, warum.

John S. Gruber
quelle
In Ihrem Fall scheint es, dass 3D-Rendering in der Software über llvmpipe (daher libllvm) durchgeführt wird
ish
1

Soweit ich weiß, hat AMD kürzlich die Katalysatortreiberversion 12.6 (vor 3-4 Tagen) veröffentlicht, die mit dem 3.4-Kernel kompatibel ist. Ich empfehle Ihnen daher, Ihren aktuellen "fglrx" -Treiber zu deinstallieren, Ihren Kernel zu aktualisieren und dann den neuesten Kernel zu installieren. Bitte posten Sie Ihre Ergebnisse, da ich auch nach einer Lösung für Überhitzung suche. Ich habe gehört, dass Kernel 3.4 einige automatische CPU-Skalierungsfunktionen hat

codeguru111
quelle
-2
ERROR (dkms apport): kernel package linux-headers-3.4.0-030400-generic-pae is not supported
Error! Bad return status for module build on kernel: 3.4.0-030400-generic-pae (i686)

Ich glaube, Ihr Computer ist nicht mit PAE kompatibel, daher müssen Sie den Linux-Kernel selbst kompilieren. Dieser Link kann Ihnen helfen: http://verahill.blogspot.com.es/2012/05/compiling-kernel-34-on-debian.html

Xerz
quelle
Aber wenn mein Laptop nicht mit PAE kompatibel ist, warum ist der installierte Kernel bereits PAE? Wenn ich den Befehl "uname -r" benutze, sagte die Ausgabe -> "3.2.0-24-generic-pae" <- dies ist meine aktuelle Kernel-Version.
udin.elovers
Dann weiß ich nicht, was passiert ... versuchen Sie trotzdem, Ihre eigene Version des Kernels zu kompilieren.
Xerz
-2

Sie haben dort die Antwort: kernel package linux-headers-3.4.0-030400-generic-pae is not supported

Frantique
quelle
bedeutet es also, dass ich Kernel 3.4 nicht auf meinem Laptop installieren kann? Warum?
udin.elovers
Auf dem OP wird jedoch bereits Ubuntu 12.04 ausgeführt, was bedeutet, dass sie mit PAE kompatibel sein müssen.
John S Gruber