
        *****************************************************
        *           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-shlibdeps - substitutievariabelen genereren over
afhankelijkheidsrelaties tot gedeelde bibliotheken

=head1 OVERZICHT

B<dpkg-shlibdeps> [I<optie>...] [B<-e>] I<programma> [I<optie>...]

=head1 BESCHRIJVING

B<dpkg-shlibdeps> berekent de afhankelijkheidsrelaties tot gedeelde
bibliotheken voor de programma's die genoemd worden in zijn argumenten. De
afhankelijkheden worden in het bestand met substitutievariabelen
B<debian/substvars> toegevoegd als variabelenaam
B<shlibs:>I<afhankelijkheidsveld>, waarbij I<afhankelijkheidsveld> de naam
van een afhankelijkheidsveld is. Eventuele andere variabelen die met
B<shlibs:> beginnen worden uit het bestand verwijderd.

B<dpkg-shlibdeps> heeft twee mogelijke informatiebronnen om
afhankelijkheidsinformatie te genereren, ofwel I<symbols>-bestanden ofwel
I<shlibs>-bestanden. Voor elke binair pakket dat B<dpkg-shlibdeps>
analyseert, zoekt het de lijst van bibliotheken op waarmee het gelinkt
is. Vervolgens zoekt het voor iedere bibliotheek ofwel het
I<symbols>-bestand of het I<shlibs>-bestand (indien het eerste niet bestaat
of indien debian/shlibs.local de relevante afhankelijkheidsinformatie bevat)
op. Beide bestanden worden verondersteld geleverd te worden door het
bibliotheekpakket en zouden dus te vinden moeten zijn als
%ADMINDIR%/info/I<pakket>.I<symbols> of
/var/lib/dpkg/info/I<pakket>.I<shlibs>. De naam van het pakket wordt in twee
stappen gevonden: het bibliotheekbestand opzoeken op het systeem (er wordt
in dezelfde mappen gezocht als die welke B<ld.so> zou gebruiken) en dan
B<dpkg -S> I<bibliotheekbestand> gebruiken om het pakket op te zoeken dat de
bibliotheek levert.

=head2 Symbolenbestanden

Symbolenbestanden bevatten fijnmazige afhankelijkheidsinformatie door voor
ieder symbool dat de bibliotheek exporteert, de minimumvereiste op te
geven. Het script tracht een symbolenbestand dat bij een bibliotheekpakket
hoort op de volgende plaatsen te vinden (het eerste dat gevonden wordt,
wordt gebruikt):

=over 

=item debian/*/DEBIAN/symbols

Informatie over gedeelde bibliotheken die gegenereerd werd door het huidige
bouwproces dat ook B<dpkg-shlibdeps> aanriep. Zij worden gegenereerd door
B<dpkg-gensymbols>(1). Ze worden enkel gebruikt als de bibliotheek
aangetroffen wordt in de bouwboom van een pakket. Het bestand symbols in die
bouwboom heeft voorrang op symbolenbestanden van andere binaire pakketten.

=item %PKGCONFDIR%/symbols/I<pakket>.symbols.I<arch>

=item %PKGCONFDIR%/symbols/I<pakket>.symbols

Systeemspecifieke vervangingsinformatie over afhankelijkheidsrelaties tot
gedeelde bibliotheken. I<arch> is de architectuur van het huidige systeem
(verkregen door B<dpkg-architecture -qDEB_HOST_ARCH>).

=item Uitvoer van “B<dpkg-query --control-path> I<pakket> symbols”

Door een pakket verstrekte informatie over afhankelijkheidsrelaties tot
gedeelde bibliotheken. Tenzij anders bepaald door B<--admindir>, zijn deze
bestanden te vinden in %ADMINDIR%.

=back

Tijdens het doorzoeken van de door al de programma's gebruikte symbolen,
onthoudt B<dpkg-shlibdeps> van elke bibliotheek de (hoogste) minimale versie
die nodig is. Op het eind van het proces is het in staat voor elke gebruikte
bibliotheek uit te schrijven wat de minimale vereiste is (in de
veronderstelling dat de informatie uit de I<symbols>-bestanden accuraat is).

Bij wijze van beschermende maatregel kan een symbols-bestand een
meta-informatieveld B<Build-Depends-Pakket> bevatten. Dan zal
B<dpkg-shlibdeps> de door het corresponderende pakket vereiste minimale
versie halen uit het veld B<Build-Depends> en deze versie gebruiken als ze
hoger is dan de minimale versie die berekend werd via het doorzoeken van
symbolen.

=head2 Shlibs-bestanden

Shlibs-bestanden koppelen rechtstreeks een bibliotheek aan een vereiste
(zonder naar de symbolen te kijken). Dit is dus dikwijls strikter dan echt
nodig, maar erg veilig en gemakkelijk te hanteren.

De afhankelijkheidsrelaties tot een bibliotheek worden op verschillende
plaatsen opgezocht. Het eerste bestand dat informatie biedt over de
bibliotheek in kwestie, wordt gebruikt:

=over 

=item debian/shlibs.local

Pakket-eigen vervangende informatie over afhankelijkheidsrelaties tot
gedeelde bibliotheken.

=item %PKGCONFDIR%/shlibs.override

Systeemspecifieke vervangende informatie over afhankelijkheidsrelaties tot
gedeelde bibliotheken.

=item debian/*/DEBIAN/shlibs

Informatie over gedeelde bibliotheken die gegenereerd werd door het huidige
bouwproces dat ook B<dpkg-shlibdeps> inriep. Ze wordt enkel gebruikt als de
bibliotheek aangetroffen wordt in de bouwboom van het pakket. Het
shlibs-bestand in die bouwboom heeft voorrang op shlibs-bestanden van andere
binaire pakketten.

=item Uitvoer van “B<dpkg-query --control-path> I<pakket> shlibs”

Door een pakket verstrekte informatie over afhankelijkheidsrelaties tot
gedeelde bibliotheken. Tenzij anders bepaald door B<--admindir>, zijn deze
bestanden te vinden in %ADMINDIR%.

=item %PKGCONFDIR%/shlibs.default

Systeemspecifieke standaardinformatie over afhankelijkheidsrelaties tot
gedeelde bibliotheken.

=back

De uitgelichte afhankelijkheden worden dan rechtstreeks gebruikt (behalve
als ze uitgefilterd werden omdat ze als duplicaten onderkend werden of als
zwakker dan een andere afhankelijkheid).

=head1 OPTIES

Argumenten die geen opties zijn, worden door B<dpkg-shlibdeps>
geïnterpreteerd als namen van programma's, net alsof ze opgegeven werden als
B<-e>I<programma>.

=over 

=item B<-e>I<programma>

De gepaste afhankelijkheidsrelaties tot gedeelde bibliotheken die nodig zijn
voor I<programma>, toevoegen. Deze optie kan meermaals gebruikt worden.

=item B<-l>I<map>

I<map> vooraan toevoegen aan de lijst van mappen waarin naar particuliere
gedeelde bibliotheken gezocht moet worden (sinds dpkg 1.17.0). Deze optie
kan meermaals gebruikt worden.

B<Opmerking:> gebruik deze optie in de plaats van het instellen van
B<LD_LIBRARY_PATH>, aangezien die omgevingsvariabele gebruikt wordt om de
runtime linker aan te sturen. Daarvan misbruik maken om de paden van
gedeelde bibliotheken in te stellen tijdens het bouwen van het programma,
kan problematisch zijn, bijvoorbeeld bij het cross-compileren.

=item B<-d>I<afhankelijkheidsveld>

Afhankelijkheidsinformatie opgeven die toegevoegd moet worden aan het
afhankelijkheidsveld I<afhankelijkheidsveld> van het bestand control. (De
afhankelijkheidsinformatie voor dit veld wordt in de variabele
B<shlibs:>I<dependency-field> geplaatst.)

De optie B<-d>I<afhankelijkheidsveld> heeft uitwerking voor alle programma's
na de optie tot aan het volgende B<-d>I<afhankelijkheidsveld>. Het standaard
I<afhankelijkheidsveld> is B<Depends>.

Indien hetzelfde afhankelijkheidsitem (of set van alternatieven) te vinden
is in meer dan een van de herkende namen voor afhankelijkheidsvelden
B<Pre-Depends>, B<Depends>, B<Recommends>, B<Enhances> of B<Suggests>, zal
B<dpkg-shlibdeps> de afhankelijkheid automatisch uit alle velden
verwijderen, behalve uit het veld dat de belangrijkste afhankelijkheid
vertegenwoordigt.

=item B<-p>I<variabelenaamprefix>

Substitutievariabelen beginnen met I<variabelenaamprefix>B<:> in plaats van
met B<shlibs:>. Op dezelfde wijze worden eventuele substitutievariabelen die
beginnen met I<variabelenaamprefix>B<:> (in plaats van met B<shlibs:>),
verwijderd uit het bestand met substitutievariabelen.

=item B<-O>[I<bestandsnaam>]

De instellingen in verband met substitutievariabelen weergeven op de
standaarduitvoer (of in I<bestandsnaam> als die opgegeven werd; sinds dpkg
1.17.2), eerder dan ze toe te voegen aan het bestand met
substitutievariabelen (standaard is dat B<debian/substvars>).

=item B<-t>I<type>

De voorrang geven aan informatie over afhankelijkheidsrelaties tot gedeelde
bibliotheken die gemarkeerd werd als geldend voor het opgegeven
pakkettype. Indien er geen gemarkeerde informatie te vinden is, wordt
teruggevallen op niet-gemarkeerde informatie. Het standaardpakkettype is
B<deb>. Informatie over afhankelijkheidsrelaties tot gedeelde bibliotheken
wordt gemarkeerd als geldend voor een bepaald type door ze te laten
voorafgaan door de naam van dat type, een dubbele punt en witruimte.

=item B<-L>I<lokaal-shlibs-bestand>

Vervangende informatie over afhankelijkheidsrelaties tot gedeelde
bibliotheken lezen uit I<lokaal-shlibs-bestand> in plaats van uit
B<debian/shlibs.local>.

=item B<-T>I<substvars-bestand>

Substitutievariabelen opschrijven in I<substvars-bestand>. Standaard is dat
B<debian/substvars>.

=item B<-v>

De breedsprakige modus inschakelen (sinds dpkg 1.14.8). Talrijke berichten
worden weergegeven om uit te leggen wat B<dpkg-shlibdeps> doet.

=item B<-x>I<pakket>

Het pakket uitsluiten van de gegenereerde afhankelijkheden (sinds dpkg
1.14.8). Dit is nuttig om een afhankelijkheid van zichzelf te vermijden voor
pakketten die binaire bestanden van het type ELF aanleveren (programma's of
bibliotheekuitbreidingen), waarbij die binaire bestanden gebruik maken van
een bibliotheek die in hetzelfde pakket te vinden is. Deze optie kan
meermaals gebruikt worden om meerdere pakketten uit te sluiten.

=item B<-S>I<pakket-bouwmap>

Eerst zoeken in I<pakket-bouwmap> bij het zoeken naar een bibliotheek (sinds
dpkg 1.14.15). Dit is nuttig als het broncodepakket meerdere varianten van
dezelfde bibliotheek bouwt en u zeker wilt zijn dat u de afhankelijkheden
krijgt van een specifiek binair pakket. U kunt deze optie meermaals
gebruiken: mappen zullen in de opgegeven volgorde doorzocht worden vooraleer
gezocht wordt in de mappen van andere binaire pakketten.

=item B<-I>I<pakketbouwmap>

I<pakketbouwmap> overslaan bij het zoeken naar shlibs-, symbolen- en
gedeelde bibliotheek-bestanden (sinds dpkg 1.18.5). U kunt deze optie
meermaals gebruiken.

=item B<--ignore-missing-info>

Het niet als een mislukking beschouwen als voor een gedeelde bibliotheek
geen afhankelijkheidsinformatie gevonden kan worden (sinds dpkg 1.14.8). Het
wordt afgeraden om deze optie te gebruiken. Alle bibliotheken zouden
afhankelijkheidsinformatie moeten verschaffen (ofwel via shlibs-bestanden of
via symbolenbestanden), zelfs als die nog niet door andere pakketten
gebruikt wordt.

=item B<--warnings=>I<waarde>

I<waarde> is een bit-veld dat aangeeft welke set waarschuwingen
B<dpkg-shlibdeps> kan geven (sinds dpkg 1.14.17). Bit 0 (waarde=1) activeert
de waarschuwing “symbool I<sym> dat door I<binair-bestand> gebruikt wordt,
werd in geen enkele bibliotheek aangetroffen”, bit 1 (waarde=2) activeert de
waarschuwing “pakket zou een nutteloze afhankelijkheid kunnen vermijden” en
bit 2 (waarde=4) activeert de waarschuwing “I<binair-bestand> zou niet
gelinkt moeten worden met I<bibliotheek>”. De standaard-I<waarde> is 3:
standaard zijn de eerste twee waarschuwingen geactiveerd, de laatste
niet. Stel de I<waarde> in op 7 indien u wilt dat alle waarschuwingen
geactiveerd worden.

=item B<--admindir=>I<map>

Een andere locatie opgeven voor de database van B<dpkg> (sinds dpkg
1.14.0). De standaardlocatie is I<%ADMINDIR%>.

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

Info tonen over het gebruik en afsluiten.

=item B<--version>

De versie tonen en afsluiten.

=back

=head1 OMGEVING

=over 

=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 DIAGNOSTIEK

=head2 Waarschuwingen

Aangezien B<dpkg-shlibdeps> de set symbolen analyseert die gebruikt wordt
door elk binair bestand uit het gegeneerde pakket, is het in staat om in
verschillende gevallen waarschuwingen te geven. Zij geven u informatie over
zaken die in het pakket verbeterd kunnen worden. In de meeste gevallen
hebben die verbeteringen rechtstreeks betrekking op de broncode van de
toeleveraar (upstream). In aflopende volgorde van belangrijkheid volgen
hierna de waarschuwingen die u kunt krijgen:

=over 

=item B<symbool> I<sym> B<gebruikt door> I<binair-bestand> B<in geen enkele
bibliotheek gevonden.>

Het aangegeven symbool werd niet aangetroffen in de bibliotheken die met het
binair bestand gelinkt werden. Hoogstwaarschijnlijk is I<binair-bestand> een
bibliotheek die gelinkt moet worden met een andere bibliotheek tijdens het
bouwproces (optie B<-l>I<bibliotheek> van de linker).

=item I<Binair bestand> B<bevat een onoplosbare verwijzing naar symbool> I<sym>B<:
wellicht is het een uitbreiding>

Het aangegeven symbool werd niet aangetroffen in de bibliotheken die gelinkt
zijn met het binair bestand. Hoogstwaarschijnlijk is het I<binair-bestand>
een uitbreiding (plug-in) en wordt het symbool ter beschikking gesteld door
het programma dat deze uitbreiding laadt. In theorie heeft een uitbreiding
geen SONAME, maar dit binair bestand heeft er wel een en in die hoedanigheid
kon het niet met zekerheid geïdentificeerd worden als een uitbreiding. Het
feit evenwel dat het binaire bestand opgeslagen wordt in een niet-publieke
map is een sterke aanwijzing dat het niet om een gewone gedeelde bibliotheek
gaat. Indien het binaire bestand effectief een uitbreiding is, mag u deze
waarschuwing negeren. Maar er bestaat altijd een kans dat het om een echte
bibliotheek gaat en dat programma's die ermee linken gebruik manken van een
RPATH waardoor de dynamische lader ze kan vinden. In dat geval gaat het om
een defecte bibliotheek en moet het defect gerepareerd worden.

=item B<Het pakket zou een nutteloze afhankelijkheid kunnen vermijden indien>
I<binair-bestand> B<niet gelinkt was met> I<bibliotheek> B<(het gebruikt
geen enkel symbool van de bibliotheek)>

Geen enkel van de I<binaire-bestanden> die gelinkt werden met I<bibliotheek>
gebruikt een symbool dat door de bibliotheek aangeleverd wordt. Door al de
binaire bestanden te repareren zou u de afhankelijkheidsrelatie die verband
houdt met deze bibliotheek, kunnen vermijden (tenzij dezelfde
afhankelijkheid ook gegenereerd wordt door een andere bibliotheek die echt
gebruikt wordt).

=item B<Het pakket zou een nutteloze vereiste kunnen vermijden indien>
I<programma's> B<niet gelinkt waren met> I<bibliotheek> B<(ze gebruiken geen
enkel symbool van de bibliotheek)>

Identiek dezelfde waarschuwing als hierboven, maar dan voor meerdere
programma's.

=item I<Binair-bestand> B<zou niet gelinkt moeten worden met> I<bibliotheek>
B<(het gebruikt geen enkel symbool van de bibliotheek)>

Het I<binair-bestand> is gelinkt met een bibliotheek die het niet nodig
heeft. Dit is geen probleem, maar er kan een kleine prestatiewinst bekomen
worden wat de laadtijd van het binair bestand betreft, door deze bibliotheek
niet met dit binair bestand te koppelen. Deze waarschuwing controleert
dezelfde informatie als de voorgaande, maar doet dit voor elk binair bestand
in plaats van de toets globaal uit te voeren voor alle geanalyseerde binaire
bestanden.

=back

=head2 Fouten

B<dpkg-shlibdeps> zal mislukken als het een publieke bibliotheek die door
een binair bestand gebruikt wordt, niet kan vinden of indien er geen
afhankelijkheidsinformatie (ofwel een shlibs-bestand of een symbolenbestand)
aan die bibliotheek gekoppeld is. Een publieke bibliotheek heeft een SONAME
en heeft een versienummer (lib-iets.so.I<X>). Een private bibliotheek (zoals
een uitbreiding - plug-in) zou geen SONAME mogen hebben en heeft geen
versienummer nodig.

=over 

=item B<Kon bibliotheek> I<SONAME-van-bibliotheek> B<die> I<binair-bestand>
B<nodig heeft, niet vinden (het RPATH ervan is '>I<rpath>B<')>

Het I<binair-bestand> gebruikt een bibliotheek met de naam
I<soname-van-bibliotheek>, maar B<dpkg-shlibdeps> heeft de bibliotheek niet
kunnen vinden. B<dpkg-shlibdeps> legt als volgt een lijst van te controleren
mappen aan: mappen die vermeld worden in het RPATH van het binair bestand,
mappen die toegevoegd werden via de optie B<-l>, mappen die vermeld worden
in de omgevingsvariabele B<LD_LIBRARY_PATH>, kruismultiarch-mappen
(bijv. /lib/arm64-linux-gnu, /usr/lib/arm64-linux-gnu), standaard publieke
mappen (/lib, /usr/lib), mappen vermeld in /etc/ld.so.conf en verouderde
multibibliotheekmappen (/lib32, /usr/lib32, /lib64, /usr/lib64). Daarna
controleert het die mappen binnenin de bouwboom van het binaire pakket dat
geanalyseerd wordt, binnenin de pakketbouwbomen die met de
commandoregeloptie B<-S> opgegeven werden, binnenin de bouwbomen van andere
pakketten die een bestand DEBIAN/shlibs of DEBIAN/symbols hebben en
tenslotte in de basismap. Als de bibliotheek in geen enkele van die mappen
aangetroffen wordt, krijgt u deze foutmelding.

Indien de niet-gevonden bibliotheek zich in een private map van hetzelfde
pakket bevindt, dan moet u die map toevoegen met de optie B<-l>. Als ze zich
bevindt in een ander binair pakket dat gebouwd wordt, moet u erop letten dat
het bestand shlibs/symbols van dat pakket reeds gemaakt is en dat B<-l> de
gepaste map bevat als ze zich ook in een private map bevindt.

=item B<Geen afhankelijkheidsinformatie gevonden voor> I<bibliotheekbestand>
B<(dat gebruikt wordt door> I<binair-bestand>B<).>

De bibliotheek die I<binair-bestand> nodig heeft, werd door
B<dpkg-shlibdeps> in I<bibliotheekbestand> gevonden, maar B<dpkg-shlibdeps>
was niet in staat vereisteninformatie voor die bibliotheek te vinden. Om
vereistengegevens te vinden heeft het geprobeerd de bibliotheek op te zoeken
in een Debian pakket met behulp van B<dpkg -S> I<bibliotheekbestand>. Daarna
heeft het de overeenkomstige shlibs- en symbols-bestanden nagekeken in
%ADMINDIR%/info/ en in de verschillende bouwbomen van het pakket
(debian/*/DEBIAN/).

Deze mislukking kan veroorzaakt worden door een slecht of ontbrekend shlibs-
of symbols-bestand in het pakket van de bibliotheek. Ze kan zich ook
voordoen als de bibliotheek gebouwd wordt binnen hetzelfde broncodepakket en
de shlibs-bestanden nog niet aangemaakt zijn (in dat geval moet u
debian/rules repareren zodat de shlibs gemaakt worden voordat
B<dpkg-shlibdeps> ingeroepen wordt). Een slecht RPATH kan er ook toe leiden
dat de bibliotheek te vinden is onder een ongebruikelijke naam (bijvoorbeeld
/usr/lib/openoffice.org/../lib/libssl.so.0.9.8 in plaats van
/usr/lib/libssl.so.0.9.8), die aan geen enkel pakket gekoppeld
is. B<dpkg-shlibdeps> tracht dit te omzeilen door terug te vallen op een
gebruikelijke naam (met behulp van B<realpath>(3)), maar dit lukt niet
altijd. Het is altijd het beste om het RPATH van het binair bestand uit te
zuiveren om problemen te voorkomen.

Het inroepen van B<dpkg-shlibdeps> in de breedsprakige modus (B<-v>) zal
veel meer informatie geven over waar het programma de
afhankelijkheidsinformatie tracht te vinden. Dit kan nuttig zijn indien u
niet begrijpt waarom u deze foutmelding krijgt.

=back

=head1 ZIE OOK

B<deb-shlibs>(5), B<deb-symbols>(5), B<dpkg-gensymbols>(1).

