summaryrefslogtreecommitdiffstats
path: root/man/nl/dpkg-architecture.pod
blob: 5d65686c37bf52f4c2cdb092521ab3e2fac94ddb (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
        *****************************************************
        *           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 NAAM

dpkg-architecture - de architectuur voor het bouwen van pakketten instellen en vaststellen

=head1 OVERZICHT

B<dpkg-architecture> [I<optie>...] [I<commando>]

=head1 BESCHRIJVING

B<dpkg-architecture> biedt een mogelijkheid om de bouw- en host-architectuur voor het bouwen van pakketten vast te stellen en in te stellen.

De bouwarchitectuur wordt steeds bepaald door ofwel de variabele B<DEB_BUILD_ARCH> indien deze ingesteld is (en B<--force> niet werd opgegeven), of door een externe aanroep van L<dpkg(1)> en kan niet ingesteld worden aan de commandoregel.

U kunt de host-architectuur specificeren door een van of allebei de opties B<--host-arch> en B<--host-type> op te geven, anders wordt de variabele B<DEB_HOST_ARCH> gebruikt als die ingesteld werd (en B<--force> niet opgegeven werd). Wat de standaard is, wordt vastgesteld door een externe aanroep van L<gcc(1)> of, als zowel B<CC> als gcc onbeschikbaar zijn, gelijkgesteld aan de bouwarchitectuur. Een van beide, B<--host-arch> of B<--host-type>, volstaat. De andere waarde zal op een gebruikelijke standaardwaarde ingesteld worden. Het is inderdaad dikwijls beter om slechts één waarde op te geven, vermits B<dpkg-architecture> een waarschuwing zal geven als de keuze die u maakt niet met de standaardwaarde overeenkomt.

=head1 COMMANDO'S

=over 

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

De omgevingsvariabelen weergeven, één per regel, volgens de indeling I<VARIABELE=waarde>. Dit is de standaardactie.

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

Nagaan of de architecturen gelijk zijn (sinds dpkg 1.13.13). Het vergelijkt de huidige of opgegeven Debian host-architectuur met I<architectuur> om na te gaan of ze gelijk zijn. Deze actie zal geen architectuurjokertekens verwerken. Het commando sluit af met een afsluitstatus 0 bij gelijkheid en 1 bij ongelijkheid.

=item B<-i>, B<--is> I<architectuurjokerteken>

Nagaan of de architecturen gelijk zijn (sinds dpkg 1.13.13). Het vergelijkt de huidige of opgegeven Debian host-architectuur met I<architectuurjokerteken>, nadat dit als een architectuurjokerteken verwerkt werd, om na te gaan of beide gelijk zijn. Het commando sluit af met een afsluitstatus 0 bij gelijkheid en 1 bij ongelijkheid.

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

De waarde van één enkele variabele tonen.

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

Een export-commando tonen. Dit kan gebruikt worden om de omgevingsvariabelen in te stellen met behulp van het commando B<eval> van de POSIX shell of van make, afhankelijk van de indeling van de uitvoer.

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

Een commando tonen dat vergelijkbaar is met B<--print-set>, maar om alle variabelen leeg te maken.

=item B<-c>, B<--command> I<commando-tekenreeks>

Een I<commando-tekenreeks> uitvoeren in een omgeving waarin alle variabelen ingesteld zijn op de vastgelegde waarde.

Als de I<commando-tekenreeks> shell-metatekens bevat, dan wordt het aangeroepen via de bourne-shell van het systeem.

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

Een lijst van geldige architectuurbenamingen tonen. Kan eventueel ingeperkt worden met een of meer van de vergelijkingsopties B<--match-wildcard>, B<--match-bits> of B<--match-endian> (sinds dpkg 1.17.14).

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

Info tonen over het gebruik en afsluiten.

=item B<--version>

De versie tonen en afsluiten.

=back

=head1 OPTIES

=over 

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

De Debian-architectuur voor de host instellen.

=item B<-t>, B<--host-type> I<gnu-systeemtype>

Het GNU-systeemtype instellen voor de host.

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

De Debian-architectuur instellen voor het doel (sinds dpkg 1.17.14).

=item B<-T>, B<--target-type> I<gnu-systeemtype>

Het GNU-systeemtype instellen voor het doel (sinds dpkg 1.17.14).

=item B<-W>, B<--match-wildcard> I<architectuurjokerteken>

De architecturen die door B<--list-known> weergegeven worden, beperken tot die welke beantwoorden aan het opgegeven architectuurjokerteken (sinds dpkg 1.17.14).

=item B<-B>, B<--match-bits> I<architectuur-bits>

De architecturen die door B<--list-known> weergegeven worden, beperken tot die met de opgegeven CPU-bits (sinds dpkg 1.17.14). Ofwel B<32> ofwel B<64>.

=item B<-E>, B<--match-endian> I<architectuur-bytevolgorde>

De architecturen die door B<--list-known> weergegeven worden, beperken tot die met de opgegeven bytevolgorde (endianness) (sinds dpkg 1.17.14). Ofwel B<little> ofwel B<big>.

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

Stelt de indeling van de uitvoer van B<--print-set> en B<--print-unset> (sinds dpkg 1.20.6) in op ofwel B<shell> (standaard) of B<make>.

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

Waarden die door bestaande omgevingsvariabelen ingesteld zijn en die dezelfde naam hebben als die welke door de scripts gebruikt worden, worden gehonoreerd (d.w.z. gebruikt door B<dpkg-architecture>), behalve wanneer deze forceer-vlag gebruikt wordt. Dit laat de gebruiker toe om een waarde te vervangen, zelfs als het aanroepen van B<dpkg-architecture> ingebed zit in een ander script (bijvoorbeeld L<dpkg-buildpackage(1)>).

=back

=head1 TERMINOLOGIE

=over 

=item bouwmachine

De machine waarop het pakket gebouwd wordt.

=item hostmachine

De machine waarvoor het pakket gebouwd wordt.

=item doelmachine

De machine waarvoor de compiler bouwt of waar de emulator code voor zal uitvoeren. Dit is enkel nodig bij het bouwen van een kruisgereedschapsketen (cross-toolchain) (of emulator), een die gebouwd zal worden op de bouwarchitectuur om uitgevoerd te worden op de hostarchitectuur en code moet bouwen (of geëmuleerd moet uitvoeren) voor de doelarchitectuur.

=item Debian-architectuur

De tekenreeks waarmee de Debian-architectuur aangeduid wordt en die ook de boomstructuur met de binaire pakketten in het FTP-archief specificeert. Voorbeelden: i386, sparc, hurd-i386.

=item Debian-architectuurtupel

Een Debian-architectuurtupel is de volledige unieke architectuurnaam met de expliciete  vermelding van alle componenten. Dit verschilt minstens daarin van een Debian architectuur dat de component I<cpu> niet de I<abi> impliceert. Het huidige tupel heeft als vorm I<abi>-I<libc>-I<os>-I<cpu>. Voorbeelden: base-gnu-linux-amd64, eabihf-musl-linux-arm.

=item Debian-architectuurjokerteken

Een Debian-architectuurjokerteken is een speciale architectuurtekenreeks die een overeenkomst oplevert met elke echte architectuur die er onder hoort. De algemene vorm is een Debian-architectuurtupel met vier of minder elementen en waarvan er minstens een B<any> is. Ontbrekende elementen van de tupel worden impliciet als B<any> voorgevoegd, en dus zijn de volgende koppels equivalent:

=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

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

=item GNU-systeemtype

Een tekenreeks die een architectuurspecificatie inhoudt en bestaat uit twee delen met daartussen een koppelteken: cpu en systeem. Voorbeelden: i586-linux-gnu, sparc-linux-gnu, i686-gnu, x86_64-netbsd.

=item multiarch-triplet

Het uitgezuiverde GNU-systeemtype dat voor bestandssysteempaden gebruikt wordt. Dit triplet verandert zelfs niet wanneer het referentie-ISA verhoogd wordt, waardoor de resulterende paden stabiel blijven door de tijd. Het enige verschil met het GNU-systeemtype is momenteel dat voor op i386 gebaseerde systemen het CPU-gedeelte steeds i386 is. Voorbeelden: i386-linux-gnu, x86_64-linux-gnu. Voorbeelden van paden: /lib/powerpc64le-linux-gnu/, /usr/lib/i386-kfreebsd-gnu/.

=back

=head1 VARIABELEN

De volgende variabelen worden gelezen uit de omgeving (tenzij B<--force> werd opgegeven) en door B<dpkg-architecture> ingesteld (zie de sectie B<TERMS> voor een beschrijving van het naamgevingsschema):

=over 

=item B<DEB_BUILD_ARCH>

De Debian architectuur van de bouwmachine.

=item B<DEB_BUILD_ARCH_ABI>

De Debian ABI-naam van de bouwmachine (sinds dpkg 1.18.11).

=item B<DEB_BUILD_ARCH_LIBC>

De Debian libc-naam van de bouwmachine (sinds dpkg 1.18.11).

=item B<DEB_BUILD_ARCH_OS>

De Debian systeemnaam van de bouwmachine (sinds dpkg 1.13.2).

=item B<DEB_BUILD_ARCH_CPU>

De Debian CPU-naam van de bouwmachine (sinds dpkg 1.13.2).

=item B<DEB_BUILD_ARCH_BITS>

De pointergrootte van de bouwmachine (in bits; sinds dpkg 1.15.4).

=item B<DEB_BUILD_ARCH_ENDIAN>

De bytevolgorde (endianness) van de bouwmachine (little / big; sinds dpkg 1.15.4).

=item B<DEB_BUILD_GNU_CPU>

Het onderdeel GNU CPU van B<DEB_BUILD_GNU_TYPE>.

=item B<DEB_BUILD_GNU_SYSTEM>

Het onderdeel GNU system van B<DEB_BUILD_GNU_TYPE>.

=item B<DEB_BUILD_GNU_TYPE>

Het GNU-systeemtype van de bouwmachine.

=item B<DEB_BUILD_MULTIARCH>

Het uitgezuiverde GNU-systeemtype van de bouwmachine, dat gebruikt wordt voor bestandssysteempaden (sinds dpkg 1.16.0).

=item B<DEB_HOST_ARCH>

De Debian architectuur van de hostmachine.

=item B<DEB_HOST_ARCH_ABI>

De Debian ABI-naam van de hostmachine (sinds dpkg 1.18.11).

=item B<DEB_HOST_ARCH_LIBC>

De Debian libc-naam van de hostmachine (sinds dpkg 1.18.11).

=item B<DEB_HOST_ARCH_OS>

De Debian systeemnaam van de hostmachine (sinds dpkg 1.13.2).

=item B<DEB_HOST_ARCH_CPU>

De Debian CPU-naam van de hostmachine (sinds dpkg 1.13.2).

=item B<DEB_HOST_ARCH_BITS>

De pointergrootte van de hostmachine (in bits; sinds dpkg 1.15.4).

=item B<DEB_HOST_ARCH_ENDIAN>

De bytevolgorde (endianness) van de hostmachine (little / big; sinds dpkg 1.15.4).

=item B<DEB_HOST_GNU_CPU>

Het onderdeel GNU CPU van B<DEB_HOST_GNU_TYPE>.

=item B<DEB_HOST_GNU_SYSTEM>

Het onderdeel GNU system van B<DEB_HOST_GNU_TYPE>.

=item B<DEB_HOST_GNU_TYPE>

Het GNU-systeemtype van de hostmachine.

=item B<DEB_HOST_MULTIARCH>

Het uitgezuiverde GNU-systeemtype van de hostmachine, dat gebruikt wordt voor bestandssysteem-paden (sinds dpkg 1.16.0).

=item B<DEB_TARGET_ARCH>

De Debian architectuur van de doelmachine (sinds dpkg 1.17.14).

=item B<DEB_TARGET_ARCH_ABI>

De Debian ABI-naam van de doelmachine (sinds dpkg 1.18.11).

=item B<DEB_TARGET_ARCH_LIBC>

De Debian libc-naam van de doelmachine (sinds dpkg 1.18.11).

=item B<DEB_TARGET_ARCH_OS>

De Debian systeemnaam van de doelmachine (sinds dpkg 1.17.14).

=item B<DEB_TARGET_ARCH_CPU>

De Debian CPU-naam van de doelmachine (sinds dpkg 1.17.14).

=item B<DEB_TARGET_ARCH_BITS>

De pointergrootte van de doelmachine (in bits; sinds dpkg 1.17.14).

=item B<DEB_TARGET_ARCH_ENDIAN>

De bytevolgorde (endianness) van de doelmachine (little / big; sinds dpkg 1.17.14).

=item B<DEB_TARGET_GNU_CPU>

Het onderdeel GNU CPU van B<DEB_TARGET_GNU_TYPE> (sinds dpkg 1.17.14).

=item B<DEB_TARGET_GNU_SYSTEM>

Het onderdeel GNU system van B<DEB_TARGET_GNU_TYPE> (sinds dpkg 1.17.14).

=item B<DEB_TARGET_GNU_TYPE>

Het GNU-systeemtype van de doelmachine (sinds dpkg 1.17.14).

=item B<DEB_TARGET_MULTIARCH>

Het uitgezuiverde GNU-systeemtype van de doelmachine, dat gebruikt wordt voor bestandssysteempaden (sinds dpkg 1.17.14).

=back

=head1 BESTANDEN

=head2 Architectuurtabellen

Al deze bestanden moeten aanwezig zijn, wil B<dpkg-architecture> kunnen werken. Hun locatie kan veranderd worden bij de programmauitvoering met de omgevingsvariabele B<DPKG_DATADIR>. Deze tabellen bevatten op hun eerste regel een pseudo-veld format B<Version> om hun indeling aan te geven, zodat ontleders kunnen nagaan of zij ermee kunnen omgaan, zoals "# Version=1.0".

=over 

=item I<%PKGDATADIR%/cputable>

Tabel met gekende CPU-namen en hun omzetting naar een GNU-naam. Indeling versie 1.0 (sinds dpkg 1.13.2).

=item I<%PKGDATADIR%/ostable>

Tabel van gekende namen van besturingssystemen en hun omzetting naar een GNU-naam. Indeling versie 2.0 (sinds dpkg 1.18.11).

=item I<%PKGDATADIR%/tupletable>

Omzetting tussen Debian architectuurtupels en Debian architectuurnamen. Indeling versie 1.0 (sinds dpkg 1.18.11).

=item I<%PKGDATADIR%/abitable>

Tabel van Debian architectuur-ABI-attribuutvervangingen. Indeling versie 2.0 (sinds dpkg 1.18.11).

=back

=head2 Ondersteuning bij het maken van een pakket

=over 

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

Makefile-fragment dat alle variabelen die B<dpkg-architecture> uitvoert, behoorlijk instelt en exporteert (sinds dpkg 1.16.1).

=back

=head1 VOORBEELDEN

B<dpkg-buildpackage> kan gebruikt worden met de optie B<-a> en geeft die door aan B<dpkg-architecture>. Andere voorbeelden:

=over 

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

 eval $(dpkg-architecture -u)

=back

Verifiëren of de huidige of opgegeven hostarchitectuur gelijk is aan een architectuur:

=over 

 dpkg-architecture -elinux-alpha

 dpkg-architecture -amips -elinux-mips

=back

Verifiëren of de huidige of opgegeven hostarchitectuur een Linux-systeem is:

=over 

 dpkg-architecture -ilinux-any

 dpkg-architecture -ai386 -ilinux-any

=back

=head2 Het gebruik in debian/rules

De omgevingsvariabelen die door B<dpkg-architecture> ingesteld worden, worden doorgegeven aan I<debian/rules> als variabelen voor make (zie de documentatie van make). U mag er echter niet op vertrouwen, aangezien dit het handmatig uitvoeren van het script verhindert. In de plaats daarvan zou u ze altijd moeten initialiseren met door B<dpkg-architecture> met de optie B<-q> te gebruiken. Hier volgen enkele voorbeelden die ook illustreren hoe u in uw pakket ondersteuning voor cross-compilatie kunt verbeteren:

Het opvragen van het GNU-systeemtype en dit doorgeven aan ./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

Iets enkel voor een specifieke architectuur doen:

=over 

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

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

=back

of indien u enkel dient te controleren wat het type CPU of OS is, moet u de variabele B<DEB_HOST_ARCH_CPU> of B<DEB_HOST_ARCH_OS> gebruiken.

Merk op dat u ook kunt betrouwen op een extern Makefile-fragment om al de variabelen behoorlijk in te stellen die door B<dpkg-architecture> kunnen aangeleverd worden:

=over 

 include %PKGDATADIR%/architecture.mk

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

=back

In ieder geval moet u nooit B<dpkg --print-architecture> gebruiken om architectuurinformatie te bekomen tijdens het bouwen van een pakket.

=head1 OMGEVING

=over 

=item B<DPKG_DATADIR>

Indien deze variabele een waarde heeft, zal ze gebruikt worden als de data-map van B<dpkg> waarin zich de architectuurtabellen bevinden (sinds dpkg 1.14.17). Staat standaard ingesteld op «%PKGDATADIR%».

=item B<DPKG_COLORS>

Stelt de kleurmodus in (sinds dpkg 1.18.5). Waarden die momenteel gebruikt mogen worden zijn: B<auto> (standaard), B<always> en B<never>.

=item B<DPKG_NLS>

Indien dit ingesteld is, zal het gebruikt worden om te beslissen over het activeren van moedertaalondersteuning, ook gekend als internationaliseringsondersteuning (of i18n) (sinds dpkg 1.19.0). Geldige waarden zijn: B<0> and B<1> (standaard).

=back

=head1 OPMERKINGEN

Alle lange commando- en optienamen kunnen slechts sinds dpkg 1.17.17 gebruikt worden.

=head1 ZIE OOK

L<dpkg-buildpackage(1)>.