Hallo Forum!
Ich habe meinen Desktop aufgerüstet (Skylake) und die Gelegenheit genutzt um mein Arch neu zu installieren, allerdings läuft das Ganze noch nicht wirklich rund und Wiki, googlen, herumexperimentieren haben mich noch zu keiner Lösung gebracht. Vielleicht kann mir ein Wissender unter euch helfen?
Mein Problem ist, dass ich GTK2 + GTK3 nicht fehlerfrei installieren kann. Nach der Installation, beim Ausführen von
/usr/bin/gtk-query-immodules-2.0 --update-cache bzw.
/usr/bin/gtk-query-immodules-3.0 --update-cache tritt ein Segmentation Fault auf.
(1/1) reinstalling gtk2 [################################################################] 100%
/tmp/alpm_LMx09X/.INSTALL: line 1: 854 Segmentation fault (core dumped) /usr/bin/gtk-query-immodules-2.0 --update-cache
error: command failed to execute correctly
Wenn ich
/usr/bin/gtk-query-immodules-2.0 --update-cache manuell ausführe kommt folgendes:
root@ion:~# gtk-query-immodules-2.0 --update-cache
Segmentation fault (core dumped)
root@ion:~# echo $?
139
Wenn ich versuche GTK2 oder GTK3 manuell mittels ABS zu bauen (PKGBUILD vom offiziellen Arch GTK2/GTK3 Package) wird mit der folgenden Fehlermeldung abgebrochen (GCCFLAGS hab ich
nicht verändert):
--- SNIP ---
libtool: link: ( cd ".libs" && rm -f "libgdk-x11-2.0.la" && ln -s "../libgdk-x11-2.0.la" "libgdk-x11-2.0.la" )
CPPFLAGS="-D_FORTIFY_SOURCE=2 -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES " CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -Wall" LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro" CC="gcc" /usr/bin/g-ir-scanner --add-include-path=../gdk --namespace=Gdk --nsversion=2.0 --libtool="/bin/sh ../libtool" --include=Gio-2.0 --include=GdkPixbuf-2.0 --include=Pango-1.0 --include=cairo-1.0 --library=libgdk-x11-2.0.la --warn-all --cflags-begin -DG_LOG_DOMAIN=\"Gdk\" -DGDK_COMPILATION -I.. -I.. -I../gdk -DG_DISABLE_CAST_CHECKS -pthread -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libdrm -I/usr/include/libpng16 --cflags-end gdk.h gdkapplaunchcontext.h gdkcairo.h gdkcolor.h gdkcursor.h gdkdisplay.h gdkdisplaymanager.h gdkdnd.h gdkdrawable.h gdkevents.h gdkfont.h gdkgc.h gdki18n.h gdkimage.h gdkinput.h gdkkeys.h gdkkeysyms.h gdkpango.h gdkpixbuf.h gdkpixmap.h gdkprivate.h gdkproperty.h gdkregion.h gdkrgb.h gdkscreen.h gdkselection.h gdkspawn.h gdktestutils.h gdktypes.h gdkvisual.h gdkwindow.h gdk.c gdkapplaunchcontext.c gdkcairo.c gdkcolor.c gdkcursor.c gdkdisplay.c gdkdisplaymanager.c gdkdnd.c gdkdraw.c gdkevents.c gdkfont.c gdkgc.c gdkglobals.c gdkimage.c gdkkeys.c gdkkeyuni.c gdkoffscreenwindow.c gdkpango.c gdkpixbuf-drawable.c gdkpixbuf-render.c gdkpixmap.c gdkpolyreg-generic.c gdkrectangle.c gdkregion-generic.c gdkrgb.c gdkscreen.c gdkselection.c gdkvisual.c gdkwindow.c gdkwindowimpl.c gdkkeynames.c gdkenumtypes.c gdkenumtypes.h x11/checksettings.c x11/gdkapplaunchcontext-x11.c x11/gdkasync.c x11/gdkcolor-x11.c x11/gdkcursor-x11.c x11/gdkdisplay-x11.c x11/gdkdnd-x11.c x11/gdkdrawable-x11.c x11/gdkgc-x11.c x11/gdkgeometry-x11.c x11/gdkglobals-x11.c x11/gdkimage-x11.c x11/gdkim-x11.c x11/gdkinput.c x11/gdkkeys-x11.c x11/gdkmain-x11.c x11/gdkpixmap-x11.c x11/gdkproperty-x11.c x11/gdkscreen-x11.c x11/gdkselection-x11.c x11/gdksettings.c x11/gdkspawn-x11.c x11/gdktestutils-x11.c x11/gdkvisual-x11.c x11/gdkwindow-x11.c x11/gdkxftdefaults.c x11/gdkxid.c x11/xsettings-client.c x11/xsettings-common.c libgdk-x11-2.0.la Makefile --output Gdk-2.0.gir
In file included from /usr/include/limits.h:25:0,
from /usr/lib/gcc/x86_64-unknown-linux-gnu/5.2.0/include-fixed/limits.h:168,
from /usr/lib/gcc/x86_64-unknown-linux-gnu/5.2.0/include-fixed/syslimits.h:7,
from /usr/lib/gcc/x86_64-unknown-linux-gnu/5.2.0/include-fixed/limits.h:34,
from /usr/lib/glib-2.0/include/glibconfig.h:11,
from /usr/include/glib-2.0/glib/gtypes.h:32,
from /usr/include/glib-2.0/glib/galloca.h:32,
from /usr/include/glib-2.0/glib.h:30,
from /usr/include/glib-2.0/gobject/gbinding.h:28,
from /usr/include/glib-2.0/glib-object.h:23,
from /usr/include/glib-2.0/gio/gioenums.h:28,
from /usr/include/glib-2.0/gio/giotypes.h:28,
from /usr/include/glib-2.0/gio/gio.h:26,
from /var/abs/local/gtk2/src/gtk+-2.24.28/gdk/gdkapplaunchcontext.h:30,
from /var/abs/local/gtk2/src/gtk+-2.24.28/gdk/gdk.h:32,
from /tmp/g-ir-cpp-v44bWb.c:4:
/usr/include/features.h:328:4: Warnung: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]
# warning _FORTIFY_SOURCE requires compiling with optimization (-O)
^
gdkevents.c:151: Warning: Gdk: multiple comment blocks documenting '_gdk_event_queue_insert_after:' identifier (already seen at gdkevents.c:123).
gdkpixmap.c:730: Warning: Gdk: missing ":" at column 16:
* @mask: (out) a pointer to a place to store a bitmap representing
^
g-ir-scanner: link: /bin/sh ../libtool --mode=link --tag=CC gcc -o /var/abs/local/gtk2/src/gtk+-2.24.28/gdk/tmp-introspectpLHrpo/Gdk-2.0 -export-dynamic -D_FORTIFY_SOURCE=2 -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -Wall -Wl,-O1,--sort-common,--as-needed,-z,relro tmp-introspectpLHrpo/var/abs/local/gtk2/src/gtk+-2.24.28/gdk/tmp-introspectpLHrpo/Gdk-2.0.o -L. libgdk-x11-2.0.la -lgio-2.0 -lgobject-2.0 -Wl,--export-dynamic -lgmodule-2.0 -pthread -lglib-2.0
libtool: link: gcc -o /var/abs/local/gtk2/src/gtk+-2.24.28/gdk/tmp-introspectpLHrpo/.libs/Gdk-2.0 -D_FORTIFY_SOURCE=2 -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -Wall -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z -Wl,relro tmp-introspectpLHrpo/var/abs/local/gtk2/src/gtk+-2.24.28/gdk/tmp-introspectpLHrpo/Gdk-2.0.o -Wl,--export-dynamic -pthread -Wl,--export-dynamic -L. ./.libs/libgdk-x11-2.0.so -lpangocairo-1.0 -lpango-1.0 -lfontconfig -lfreetype -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXdamage -lXfixes -lgdk_pixbuf-2.0 -lcairo -lX11 -lXext -lm -lgio-2.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -pthread
Command '['/var/abs/local/gtk2/src/gtk+-2.24.28/gdk/tmp-introspectpLHrpo/Gdk-2.0', '--introspect-dump=/var/abs/local/gtk2/src/gtk+-2.24.28/gdk/tmp-introspectpLHrpo/functions.txt,/var/abs/local/gtk2/src/gtk+-2.24.28/gdk/tmp-introspectpLHrpo/dump.xml']' returned non-zero exit status -11
/usr/share/gobject-introspection-1.0/Makefile.introspection:155: die Regel für Ziel „Gdk-2.0.gir“ scheiterte
make[4]: *** [Gdk-2.0.gir] Fehler 1
make[4]: Verzeichnis „/var/abs/local/gtk2/src/gtk+-2.24.28/gdk“ wird verlassen
Makefile:1237: die Regel für Ziel „all-recursive“ scheiterte
make[3]: *** [all-recursive] Fehler 1
make[3]: Verzeichnis „/var/abs/local/gtk2/src/gtk+-2.24.28/gdk“ wird verlassen
Makefile:1017: die Regel für Ziel „all“ scheiterte
make[2]: *** [all] Fehler 2
make[2]: Verzeichnis „/var/abs/local/gtk2/src/gtk+-2.24.28/gdk“ wird verlassen
Makefile:728: die Regel für Ziel „all-recursive“ scheiterte
make[1]: *** [all-recursive] Fehler 1
make[1]: Verzeichnis „/var/abs/local/gtk2/src/gtk+-2.24.28“ wird verlassen
Makefile:620: die Regel für Ziel „all“ scheiterte
make: *** [all] Fehler 2
==> FEHLER: Ein Fehler geschah in build().
Breche ab...
Zum Bauen von GTK2 + GTK3 braucht man das Paket
gobject-introspection und in der Fehlermeldung kommt irgendwas mit "introspection" vor also hab ich mir gedacht ich baue
gobject-introspect auch selbst. Das geht problemlos! Ich hab das selbst gebaute
gobject-introspection dann installiert und GTK nochmal neu gebaut, scheitert aber mit der gleichen Fehlermeldung wieder.
Ich Arch-Forum hab ich gelesen, dass Haswell und Broadwell CPUs "kaputt" sind und es deshalb zu GTK-Fehlern kommen kann. Lösung des Problems war ein Intel Microcode Update. Hab ich auch eingerichtet, löst aber mein Problem
nicht (außerdem gibts für Skylake anscheinend noch kein Update):
root@ion:~# dmesg | grep -i micro
[ 0.445828] microcode: CPU0 sig=0x506e3, pf=0x2, revision=0x33
[ 0.445835] microcode: CPU1 sig=0x506e3, pf=0x2, revision=0x33
[ 0.445845] microcode: CPU2 sig=0x506e3, pf=0x2, revision=0x33
[ 0.445855] microcode: CPU3 sig=0x506e3, pf=0x2, revision=0x33
[ 0.445893] microcode: Microcode Update Driver: v2.00 <tigran@aivazian.fsnet.co.uk>, Peter Oruba
Ich bin dann Testweise auf Linux-LTS und Nvidia-LTS umgestiegen, dann hab ich Nouveau anstelle von Nvidia probiert, dann hab ich im BIOS die Intel P-States und EIST deaktiviert ..... hilft alles nix.
Irgendwer Ideen?
Danke und lg