summaryrefslogtreecommitdiffstats
path: root/man/de/dpkg-architecture.pod
blob: 9d6c23967ea0ba2d21167db25c4780f393e3c309 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
        *****************************************************
        *           GENERATED FILE, DO NOT EDIT             *
        * THIS IS NO SOURCE FILE, BUT RESULT OF COMPILATION *
        *****************************************************

This file was generated by po4a(7). Do not store it (in VCS, for example),
but store the PO file used as source file by po4a-translate.

In fact, consider this as a binary, and the PO file as a regular .c file:
If the PO get lost, keeping this translation up-to-date will be harder.

=encoding UTF-8

=head1 BEZEICHNUNG

dpkg-architecture - Architektur zum Paketbau setzen und bestimmen

=head1 ÜBERSICHT

B<dpkg-architecture> [I<Option> …] [I<Befehl>]

=head1 BESCHREIBUNG

B<dpkg-architecture> stellt eine Möglichkeit bereit, die Rechner-Architektur
für den Paketbau zu bestimmen und zu setzen.

Die Bau-Architektur wird immer über due Variable B<DEB_BUILD_ARCH> (falls
diese gesetzt und B<--force> nicht angegeben ist) oder durch einen externen
Aufruf an B<dpkg>(1) bestimmt und kann nicht auf der Befehlszeile gesetzt
werden.

Sie können die Host-Architektur (Wirt-Architektur) spezifizieren, indem Sie
eine oder beide der Optionen B<--host-arch> oder B<--host-type> verwenden
(andernfalls wird die Variable B<DEB_HOST_ARCH> verwandt, falls sie gesetzt
und B<--force> nicht angegeben ist). Der Standardwert wird über einen
externen Aufruf an B<gcc>(1) ermittelt oder ist identisch mit der
Bauarchitektur, falls sowohl B<CC> als auch GCC nicht verfügbar sind. Einer
von B<--host-arch> oder B<--host-type> ist ausreichend, der Wert des anderen
wird auf einen brauchbaren Wert gesetzt. Tatsächlich ist es oft besser, nur
einen der beiden anzugeben, da B<dpkg-architecture> Sie warnen wird, falls
Ihre Wahl nicht mit dem Standardwert übereinstimmt.

=head1 BEFEHLE

=over 

=item B<-l>, B<--list>

Zeigt die Umgebungsvariablen, eine pro Zeile, in dem Format
I<VARIABLE=Wert>. Dies ist die Standardaktion.

=item B<-e>, B<--equal> I<Architektur>

Überprüft auf Gleichheit der Architekturen (seit Dpkg 1.13.13). Es prüft die
aktuelle oder angegebene Debian-Host-Architektur mit I<Architektur> auf
Gleichheit. Diese Aktion expandiert nicht die Architektur-Platzhalter
(Wildcards). Der Befehl beendet sich mit einem Exit-Status von 0, falls eine
Übereinstimmung besteht, andernfalls mit 1.

=item B<-i>, B<--is> I<Architektur-Platzhalter>

Überprüft auf Gleichheit der Architekturen (seit Dpkg 1.13.13). Es prüft die
aktuelle oder angegebene Debian-Host-Architektur mit
I<Architektur-Platzhalter>, nachdem dieser zu einem Architektur-Platzhalter
expandiert wurde und prüft, ob sie passen. Der Befehl beendet sich mit einem
Exit-Status von 0, falls eine Übereinstimmung besteht, andernfalls mit 1.

=item B<-q>, B<--query> I<Variablenname>

Zeigt den Wert einer einzelnen Variablen an.

=item B<-s>, B<--print-set>

Zeigt einen Export-Befehl. Dies kann dazu verwendet werden, um
Umgebungsvariablen mittels der POSIX-Shell oder make B<eval> zu setzen,
abhängig vom Ausgabeformat.

=item B<-u>, B<--print-unset>

Gibt ähnlich wie B<--print-set> einen Export-Befehl aus, der alle Variablen
löscht.

=item B<-c>, B<--command> I<Befehlszeichenkette>

Führt eine I<Befehlszeichenkette> in einer Umgebung aus, in der alle
Variablen auf die festgelegten Werte gesetzt sind.

=item B<-L>, B<--list-known>

Gibt eine Liste von gültigen Architekturnamen aus. Möglicherweise durch eine
oder mehrere der Abgleich-Optionen B<--match-wildcard>, B<--match-bits> oder
B<--match-endian> eingeschränkt (seit Dpkg 1.17.14).

=item B<-?>, B<--help>

Zeigt einen Hinweis zum Aufruf und beendet das Programm.

=item B<--version>

Gibt die Version aus und beendet das Programm.

=back

=head1 OPTIONEN

=over 

=item B<-a>, B<--host-arch> I<Architektur>

Setzt die Debian-Host-Architektur.

=item B<-t>, B<--host-type> I<GNU-Systemtyp>

Setzt den Host-GNU-Systemtyp.

=item B<-A>, B<--target-arch> I<Architektur>

Setzt die Ziel-Debian-Architektur (seit Dpkg 1.17.14).

=item B<-T>, B<--target-type> I<GNU-Systemtyp>

Setzt den Ziel-GNU-Systemtyp (seit Dpkg 1.17.14).

=item B<-W>, B<--match-wildcard> I<Architektur-Platzhalter>

Begrenzt die mit B<--list-known> aufgeführten Architekturen auf solche, die
auf den angegebenen Architektur-Platzhalter passen (seit Dpkg 1.17.14).

=item B<-B>, B<--match-bits> I<Architektur-Bits>

Begrenzt die mit B<--list-known> aufgeführten Architekturen auf solche mit
den angegebenen CPU-Bits (seit Dpkg 1.17.14). Entweder B<32> oder B<64>.

=item B<-E>, B<--match-endian> I<Architektur-Bytereihenfolge>

Begrenzt die mit B<--list-known> aufgeführten Architekturen auf solche mit
der angegebenen Bytereihenfolge (seit Dpkg 1.17.14). Entweder B<little> oder
B<big>.

=item B<--print-format> I<Format>

Setzt das Ausgabeformat für B<--print-set> und B<--print-unset> (seit Dpkg
1.20.6), auf entweder B<shell> (Vorgabe) oder B<make>.

=item B<-f>, B<--force>

Existierende Umgebungsvariablen mit dem gleichen Namen wie vom Skript
verwendet werden nicht überschrieben (d.h. sie werden von
B<dpkg-architecture> verwendet), es sei denn, die „force“-Markierung ist
gesetzt. Dies erlaubt es dem Benutzer, einen Wert zu überschreiben, selbst
wenn der Aufruf von B<dpkg-architecture> tief in einem anderen Skript
versteckt ist (beispielsweise B<dpkg-buildpackage>(1)).

=back

=head1 AUSDRÜCKE

=over 

=item Baumaschine

Die Maschine, auf der das Paket gebaut wird.

=item Host-Maschine

Die Maschine, für die das Paket gebaut ist.

=item Ziel-Maschine

Die Maschine, für die der Compiler baut. Dies wird nur beim Bau einer
Cross-Toolchain und zum Bau von Code für die Ziel-Architektur benötigt. Die
Cross-Toolchain wird auf der Bauarchitektur gebaut und läuft dann auf der
Host-Architektur.

=item Debian-Architektur

Die Debian-Architektur-Zeichenkette, die den binären Baum im FTP-Archiv
spezifiziert. Beispiele: i386, sparc, hurd-i386.

=item Debian-Architekturtupel

Ein Debian-Architekturtupel ist eine vollqualifizierte Architektur mit allen
Komponenten ausgeschrieben. Dies unterscheidet sich von der
Debian-Architektur zumindest in der Weise, dass das I<ABI> nicht eingebettet
ist. Das aktuelle Tupel hat die Form I<ABI>-I<Libc>-I<OS>-I<CPU>. Beispiele:
base-gnu-linux-amd64, eabihf-musl-linux-arm.

=item Debian-Architektur-Platzhalter

Ein Debian-Architektur-Platzhalter ist eine spezielle
Architektur-Zeichenkette, die auf jede reale Architektur, die ein Teil davon
ist, passt. Die allgemeine Form ist ein Debian-Architektur-Tupel mit vier
oder weniger Elementen und bei dem mindestens eines B<any> ist. Fehlende
Elemente des Tupels werden implizit als B<any> vorangestellt und daher sind
die folgenden Tupel äquivalent:

=over 

=item B<any>-B<any>-B<any>-B<any> = B<any>

=item B<any>-B<any>-I<os>-B<any> = I<os>-B<any>

=item B<any>-I<libc>-B<any>-B<any> = I<libc>-B<any>-B<any>

=back

Beispiele: linux-any, any-i386, hurd-any, eabi-any-any-arm, musl-any-any.

=item GNU-Systemtyp

Eine Architekturspezifikationszeichenkette besteht aus zwei, durch einen
Bindestrich getrennten Teilen: CPU und System. Beispiele: i586-linux-gnu,
sparc-linux-gnu, i686-gnu, x86_64-netbsd.

=item Multiarch-Tripel

Der bereinigte GNU-Systemtyp; wird für Dateipfade verwandt. Dieses Tripel
ändert sich auch nicht, wenn das zugrundeliegende ISA erhöht wird, so dass
die daraus resultierenden Pfade dauerhaft stabil bleiben. Derzeit ist der
einzige Unterschied zum GNU-Sytemtyp, dass der CPU-Anteil für i386-basierte
Systeme immer „i386“ lautet. Beispiele: i386-linux-gnu,
x86_64-linux-gnu. Beispielpfade: /lib/powerpc64le-linux-gnu/,
/usr/lib/i386-kfreebsd-gnu/.

=back

=head1 VARIABLEN

Die folgenden Variablen werden von der Umgebung gelesen (außer B<--force>
wurde angegeben) und durch B<dpkg-architecture> gesetzt (siehe den Abschnitt
B<AUSDRÜCKE> für eine Beschreibung des Benennungsschemas):

=over 

=item B<DEB_BUILD_ARCH>

Die Debian-Architektur der Baumaschine.

=item B<DEB_BUILD_ARCH_ABI>

Der Debian-ABI-Name der Baumaschine. (Seit Dpkg 1.18.11).

=item B<DEB_BUILD_ARCH_LIBC>

Der Debian-Libc-Name der Baumaschine. (Seit Dpkg 1.18.11).

=item B<DEB_BUILD_ARCH_OS>

Der Debian-Systemname der Baumaschine. (Seit Dpkg 1.13.2).

=item B<DEB_BUILD_ARCH_CPU>

Der Debian-CPU-Name der Baumaschine. (Seit Dpkg 1.13.2).

=item B<DEB_BUILD_ARCH_BITS>

Die Zeigergröße der Baumaschine in Bits. (Seit Dpkg 1.15.4).

=item B<DEB_BUILD_ARCH_ENDIAN>

Die Bytereihenfolge der Baumaschine (little/big; seit Dpkg 1.15.4).

=item B<DEB_BUILD_GNU_CPU>

Der GNU-CPU-Teil von B<DEB_BUILD_GNU_TYPE>.

=item B<DEB_BUILD_GNU_SYSTEM>

Der GNU-System-Teil von B<DEB_BUILD_GNU_TYPE>.

=item B<DEB_BUILD_GNU_TYPE>

Der GNU-Systemtyp der Baumaschine.

=item B<DEB_BUILD_MULTIARCH>

Der klargestellte GNU-Systemtyp der Baumaschine, der für Dateisystempfade
benutzt wird.

=item B<DEB_HOST_ARCH>

Die Debian-Architektur der Host-Maschine.

=item B<DEB_HOST_ARCH_ABI>

Der Debian-ABI-Name der Host-Maschine. (Seit Dpkg 1.18.11).

=item B<DEB_HOST_ARCH_LIBC>

Der Debian-Libc-Name der Host-Maschine. (Seit Dpkg 1.18.11).

=item B<DEB_HOST_ARCH_OS>

Der Debian-Systemname der Host-Maschine. (Seit Dpkg 1.13.2).

=item B<DEB_HOST_ARCH_CPU>

Der Debian-CPU-Name der Host-Maschine. (Seit Dpkg 1.13.2).

=item B<DEB_HOST_ARCH_BITS>

Die Zeigergröße der Host-Maschine in Bits. (Seit Dpkg 1.15.4).

=item B<DEB_HOST_ARCH_ENDIAN>

Die Bytereihenfolge der Host-Maschine (little/big; seit Dpkg 1.15.4).

=item B<DEB_HOST_GNU_CPU>

Der GNU-CPU-Teil von B<DEB_HOST_GNU_TYPE>.

=item B<DEB_HOST_GNU_SYSTEM>

Der GNU-System-Teil von B<DEB_HOST_GNU_TYPE>.

=item B<DEB_HOST_GNU_TYPE>

Der GNU-Systemtyp der Host-Maschine.

=item B<DEB_HOST_MULTIARCH>

Der klargestellte GNU-Systemtyp der Host-Maschine, wird für Dateisystempfade
benutzt. (Seit Dpkg 1.16.0).

=item B<DEB_TARGET_ARCH>

Die Debian-Architektur der Ziel-Maschine (seit Dpkg 1.17.14).

=item B<DEB_TARGET_ARCH_ABI>

Der Debian-ABI-Name der Ziel-Maschine. (Seit Dpkg 1.18.11).

=item B<DEB_TARGET_ARCH_LIBC>

Der Debian-Libc-Name der Ziel-Maschine. (Seit Dpkg 1.18.11).

=item B<DEB_TARGET_ARCH_OS>

Der Debian-Systemname der Ziel-Maschine. (Seit Dpkg 1.17.14).

=item B<DEB_TARGET_ARCH_CPU>

Der Debian-CPU-Name der Ziel-Maschine. (Seit Dpkg 1.17.14).

=item B<DEB_TARGET_ARCH_BITS>

Die Zeigergröße der Ziel-Maschine in Bits. (Seit Dpkg 1.17.14).

=item B<DEB_TARGET_ARCH_ENDIAN>

Die Bytereihenfolge der Ziel-Maschine (little/big; seit Dpkg 1.17.14).

=item B<DEB_TARGET_GNU_CPU>

Der GNU-CPU-Teil von B<DEB_TARGET_GNU_TYPE>. (Seit Dpkg 1.17.14).

=item B<DEB_TARGET_GNU_SYSTEM>

Der GNU-System-Teil von B<DEB_TARGET_GNU_TYPE>. (Seit Dpkg 1.17.14).

=item B<DEB_TARGET_GNU_TYPE>

Der GNU-Systemtyp der Ziel-Maschine. (Seit Dpkg 1.17.14).

=item B<DEB_TARGET_MULTIARCH>

Der klargestellte GNU-Systemtyp der Ziel-Maschine, wird für Dateisystempfade
benutzt. (Seit Dpkg 1.17.14).

=back

=head1 DATEIEN

=head2 Architekturtabellen

Alle diese Dateien müssen vorhanden sein, damit B<dpkg-architecture>
funktioniert. Ihr Ort kann zur Laufzeit mit der Umgebungsvariable
B<DPKG_DATADIR> überschrieben werden. Diese Tabellen enthalten in der ersten
Zeile ein Format-B<Version>s-Pseudofeld, um ihre Version zu kennzeichnen, so
dass Auswerteprogramme prüfen können, ob sie es verstehen. Beispiel: „#
Version=1.0“.

=over 

=item I<%PKGDATADIR%/cputable>

Tabelle der bekannten CPU-Namen und Abbildungen auf ihre
GNU-Namen. Formatversion 1.0 (seit Dpkg 1.13.2).

=item I<%PKGDATADIR%/ostable>

Tabelle der bekannten Betriebssystemnamen und Abbildungen auf ihre
GNU-Namen. Formatversion 2.0 (seit Dpkg 1.18.11).

=item I<%PKGDATADIR%/tupletable>

Abbildung zwischen den Debian-Architektur-Tupeln und den
Debian-Architekturnamen. Formatversion 1.0 (seit Dpkg 1.18.11).

=item I<%PKGDATADIR%/abitable>

Tabelle von Debian-Architektur-ABI-Attributs-Hinwegsetzung. Formatversion
2.0 (seit Dpkg 1.18.11).

=back

=head2 Paketierungsunterstützung

=over 

=item I<%PKGDATADIR%/architecture.mk>

Make-Steuerdateischnipsel, das alle Variablen, die B<dpkg-architecture>
ausgibt, korrekt setzt und exportiert (seit Dpkg 1.16.1).

=back

=head1 BEISPIELE

B<dpkg-buildpackage> akzeptiert die Option B<-a> und gibt diese an
B<dpkg-architecture> weiter. Weitere Beispiele:

=over 

 CC=i386-gnu-gcc dpkg-architecture -c debian/rules build

 eval $(dpkg-architecture -u)

=back

Überprüfen, ob die aktuelle oder angegebene Host-Architektur identisch zu
einer Architektur ist:

=over 

 dpkg-architecture -elinux-alpha

 dpkg-architecture -amips -elinux-mips

=back

Überprüfen, ob die aktuelle oder angegebene Host-Architektur ein
Linux-System ist:

=over 

 dpkg-architecture -ilinux-any

 dpkg-architecture -ai386 -ilinux-any

=back

=head2 Verwendung in debian/rules

Die Umgebungsvariablen, die von B<dpkg-architecture> gesetzt werden, werden
an I<debian/rules> als Make-Variablen weitergegeben (lesen Sie hierzu die
Make-Dokumentation). Allerdings sollten Sie sich nicht auf diese verlassen,
da damit der manuelle Aufruf des Skripts verhindert wird. Stattdessen
sollten Sie sie immer mittels B<dpkg-architecture> mit der Option B<-q>
initialisieren. Hier sind einige Beispiele, die auch zeigen, wie Sie die
Cross-Kompilierungs-Unterstützung in Ihrem Paket verbessern können:

Ermitteln des GNU-Systemtyps und dessen Weiterleitung an ./configure:

=over 

 DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 […]
 ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
   confflags += --build=$(DEB_HOST_GNU_TYPE)
 else
   confflags += --build=$(DEB_BUILD_GNU_TYPE) \
                --host=$(DEB_HOST_GNU_TYPE)
 endif
 […]
 ./configure $(confflags)

=back

Etwas nur für eine bestimmte Architektur erledigen:

=over 

 DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)

 ifeq ($(DEB_HOST_ARCH),alpha)
   […]
 endif

=back

oder, falls Sie nur den CPU- oder OS-Typ überprüfen müssen, verwenden Sie
die Variablen B<DEB_HOST_ARCH_CPU> oder B<DEB_HOST_ARCH_OS>.

Um alle Variablen, die B<dpkg-architecture> bereitstellen kann, korrekt zu
setzen, können Sie auch extern ein Make-Steuerdateischnipsel verwenden:

=over 

 include %PKGDATADIR%/architecture.mk

 ifeq ($(DEB_HOST_ARCH),alpha)
   […]
 endif

=back

Auf jeden Fall sollten Sie niemals B<dpkg --print-architecture> verwenden,
um die Architekturinformationen während eines Paketbaus zu erhalten.

=head1 UMGEBUNG

=over 

=item B<DPKG_DATADIR>

Falls dies gesetzt ist, wird es als Datenverzeichnis von B<dpkg> verwandt,
in dem sich die Architekturtabellen befinden (seit Dpkg
1.14.17). Standardmäßig „%PKGDATADIR%“.

=item B<DPKG_COLORS>

Setzt den Farbmodus (seit Dpkg 1.18.5). Die derzeit unterstützten Werte
sind: B<auto> (Vorgabe), B<always> und B<never>.

=item B<DPKG_NLS>

Falls dies gesetzt ist, wird es zur Entscheidung, ob Native Language
Support, auch als Unterstützung für Internationalisierung (oder i18n)
bekannt, aktiviert wird (seit Dpkg 1.19.0). Die akzeptierten Werte sind:
B<0> und B<1> (Vorgabe).

=back

=head1 BEMERKUNGEN

Alle langen Befehle und Optionennamen sind seit Dpkg 1.17.17 verfügbar.

=head1 SIEHE AUCH

B<dpkg-buildpackage>(1).


=head1 ÜBERSETZUNG

Die deutsche Übersetzung wurde 2004, 2006-2020 von Helge Kreutzmann
<debian@helgefjell.de>, 2007 von Florian Rehnisch <eixman@gmx.de> und
2008 von Sven Joachim <svenjoac@gmx.de>
angefertigt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die
GNU General Public License Version 2 oder neuer für die Kopierbedingungen.
Es gibt KEINE HAFTUNG.