1 |
keytoaster 09/10/05 14:20:22 |
2 |
|
3 |
Added: libxcb-1.4-upgrade-guide.xml |
4 |
Log: |
5 |
Initial translation of libxcb-1.4-upgrade-guide.xml, English revision 1.9 |
6 |
|
7 |
Revision Changes Path |
8 |
1.1 xml/htdocs/proj/de/desktop/x/x11/libxcb-1.4-upgrade-guide.xml |
9 |
|
10 |
file : http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/proj/de/desktop/x/x11/libxcb-1.4-upgrade-guide.xml?rev=1.1&view=markup |
11 |
plain: http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/proj/de/desktop/x/x11/libxcb-1.4-upgrade-guide.xml?rev=1.1&content-type=text/plain |
12 |
|
13 |
Index: libxcb-1.4-upgrade-guide.xml |
14 |
=================================================================== |
15 |
<?xml version="1.0" encoding="UTF-8"?> |
16 |
<!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> |
17 |
<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/proj/de/desktop/x/x11/libxcb-1.4-upgrade-guide.xml,v 1.1 2009/10/05 14:20:21 keytoaster Exp $ --> |
18 |
|
19 |
<guide link="/proj/de/desktop/x/x11/libxcb-1.4-upgrade-guide.xml" lang="de"> |
20 |
<title>Gentoo libxcb 1.4 Upgrade Leitfaden</title> |
21 |
|
22 |
<author title="Autor"> |
23 |
<mail link="remi" /> |
24 |
</author> |
25 |
<author title="Übersetzer"> |
26 |
<mail link="keytoaster" /> |
27 |
</author> |
28 |
|
29 |
<abstract> |
30 |
Dieser Leitfaden zeigt, wie man von libxcb 1.1.90.2 und älter auf libxcb 1.4 |
31 |
aktualisiert. |
32 |
</abstract> |
33 |
|
34 |
<!-- The content of this document is licensed under the CC-BY-SA license --> |
35 |
<!-- See http://creativecommons.org/licenses/by-sa/2.5 --> |
36 |
<license/> |
37 |
<version>0.1</version> |
38 |
<date>2009-09-12</date> |
39 |
|
40 |
<chapter> |
41 |
<title>Aktualisieren auf libxcb 1.4</title> |
42 |
<section> |
43 |
<body> |
44 |
|
45 |
<pre caption="Aktualisieren der xcb-Pakete"> |
46 |
# <i>emerge -1av x11-proto/xcb-proto x11-libs/libxcb</i> |
47 |
# <i>emerge -1av x11-proto/xproto x11-proto/xextproto x11-libs/libX11 x11-libs/libXext</i> |
48 |
</pre> |
49 |
|
50 |
<p> |
51 |
Sie haben nun alle benötigten Pakete mit Unterstützung für die neue libxcb. |
52 |
</p> |
53 |
|
54 |
</body> |
55 |
</section> |
56 |
</chapter> |
57 |
|
58 |
<chapter> |
59 |
<title>Reparieren der kaputten libtool-Archive</title> |
60 |
<section> |
61 |
<body> |
62 |
|
63 |
<p> |
64 |
Auch wenn das Update schon vorbei ist und Ihr System immer noch funktioniert, |
65 |
kann das Installieren von neuen Paketen oder Aktualisieren von Paketen einige |
66 |
unerfreuliche Überraschungen mit sich bringen. Dies liegt an libtools |
67 |
berühmt-berüchtigten Archiven: <c>.la</c> Dateien. |
68 |
</p> |
69 |
|
70 |
<p> |
71 |
Das Problem ist, dass bis vor Kurzem libX11 eine private libxcb-Bibliothek |
72 |
namens <c>libxcb-xlib.so</c> verwendet hat, die speziell für libX11 entwickelt |
73 |
wurde. Auch wenn das selbst kein Problem darstellt, hat diese keine Bibliothek |
74 |
(fast) jede einzelne <c>.la</c> Datei auf Ihrem System verschmutzt. So |
75 |
funktioniert libtool eben. |
76 |
</p> |
77 |
|
78 |
<p> |
79 |
Aber dies wird nun allmählich zum Problem, da neuere Versionen von libxcb diese |
80 |
Bibliothek nicht mehr beeinhalten (und libX11 wurde natürlich entsprechend |
81 |
angepasst). Wir müssen nun alle Referenzen auf diese Bibliothek in den |
82 |
<c>.la</c> Dateien loswerden. |
83 |
</p> |
84 |
|
85 |
<p> |
86 |
Um dies zu tun, führen Sie einfach |
87 |
<c>/usr/portage/x11-libs/libxcb/files/xcb-rebuilder.sh</c> aus, um alle |
88 |
<c>.la</c> Dateien auf Ihrem System zu reparieren. |
89 |
</p> |
90 |
|
91 |
<p> |
92 |
Das Werkzeug teilt Ihnen auch mit, ob Shared-Libraries (<c>.so</c> Dateien, |
93 |
normalerweise unterhalb von <c>/lib</c> und <c>/usr/lib</c>) die nun nicht mehr |
94 |
bestehende Bibliothek referenzieren. Wenn es kaputte Pakete berichtet, lesen Sie |
95 |
bitte weiter. Wenn nicht, haben Sie Glück gehabt und Ihr System ist in einem |
96 |
guten Zustand. :) |
97 |
</p> |
98 |
|
99 |
</body> |
100 |
</section> |
101 |
</chapter> |
102 |
|
103 |
<chapter> |
104 |
<title>Reparieren der "kaputten" Shared-Libraries</title> |
105 |
<section> |
106 |
<body> |
107 |
|
108 |
<p> |
109 |
Um zu vermeiden, dass die Systeme der Benutzer komplett zerstört werden, haben |
110 |
wir entschieden, die Datei <c>libxcb-xlib.so</c> zu behalten, so dass Sie eine |
111 |
Chance haben, Ihr System nach eigenem Ermessen zu reparieren. Wenn Sie die |
112 |
Anweisungen oben befolgt haben, sollte Ihr System nun korrekt funktionieren -- |
113 |
sowohl beim Bauen von Paketen als auch beim Ausführen. |
114 |
</p> |
115 |
|
116 |
<p> |
117 |
Aber bevor Sie <c>libxcb-xlib.so</c> entfernen können, müssen Sie einige wenige |
118 |
Pakete neu bauen. Wenn Sie diese nicht neu bauen, wird das Entfernen der alten |
119 |
Bibliothek Ihr System <b>zerstören</b>. |
120 |
</p> |
121 |
|
122 |
<p> |
123 |
Führen Sie den folgenden Einzeiler aus, um eine einfache, aber effektive, |
124 |
Untermenge von potenziell kaputten Paketen neu zu bauen. Keine Sorge, Pakete, |
125 |
die Sie nicht installiert haben, werden nicht installiert. |
126 |
</p> |
127 |
|
128 |
<pre caption="Neubauen grundlegender Pakete"> |
129 |
# <i>emerge --oneshot \ |
130 |
$(for i in x11-proto/ x11-libs/libxcb x11-libs/libX11 x11-libs/libXext \ |
131 |
x11-libs/libX x11-libs/xcb-util x11-libs/cairo \ |
132 |
x11-libs/pango x11-libs/gtk\\+ \ |
133 |
x11-libs/qt-gui; do \ |
134 |
qlist -IC $i; \ |
135 |
done) -av</i> |
136 |
</pre> |
137 |
|
138 |
<p> |
139 |
Sobald dies erledigt ist, können Sie <c>revdep-rebuild</c> (aus |
140 |
<c>app-portage/gentoolkit</c>) verwenden, um den Rest Ihres Systems zu |
141 |
reparieren. |
142 |
</p> |
143 |
|
144 |
<pre caption="Neubauen der verbleibenden kaputten Pakete"> |
145 |
# <i>revdep-rebuild -L libxcb-xlib.so.0</i> |
146 |
</pre> |
147 |
|
148 |
<p> |
149 |
Wenn <c>revdep-rebuild</c> keine weiteren kaputten Pakete mehr auflistet, |
150 |
können Sie <c>libxcb-xlib.so.0</c> gefahrlos aus Ihrem Bibliothekenverzeichnis |
151 |
löschen. |
152 |
</p> |
153 |
|
154 |
<pre caption="Löschen der jetzt unbenutzen Bibliotheken"> |
155 |
# <i>rm -i /usr/lib/libxcb-xlib.so*</i> |
156 |
</pre> |
157 |
|
158 |
</body> |
159 |
</section> |
160 |
</chapter> |
161 |
</guide> |