diff options
Diffstat (limited to 'man/sv/dpkg-shlibdeps.pod')
-rw-r--r-- | man/sv/dpkg-shlibdeps.pod | 407 |
1 files changed, 407 insertions, 0 deletions
diff --git a/man/sv/dpkg-shlibdeps.pod b/man/sv/dpkg-shlibdeps.pod new file mode 100644 index 0000000..b173f0a --- /dev/null +++ b/man/sv/dpkg-shlibdeps.pod @@ -0,0 +1,407 @@ + + ***************************************************** + * 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 NAMN + +dpkg-shlibdeps - skapar substvar-beroenden för delade bibliotek + +=head1 SYNOPS + +B<dpkg-shlibdeps> [I<flagga>...] [B<-e>] I<programfil> [I<flagga>...] + +=head1 BESKRIVNING + +B<dpkg-shlibdeps> beräknar beroenden mellan exekverbara filer som anges som +argument och delade bibliotek. Beroendena läggs till i +substitueringsvariabelfilen B<debian/substvars> som variabler med namnen +B<shlibs:>I<beroendefält> där I<beroendeefält> är ett +beroendefältsnamn. Alla andra variabler som börjar på I<shlibs:> tas bort ur +filen. + +B<dpkg-shlibdeps> kan generera beroendeinformation från två +informationskällor, antingen filen I<symbols> eller filen I<shlibs>. För +varje binärfil som analyseras av B<dpkg-shlibdeps> tas en lista fram över +vilka bibliotek de är länkade mot. Programmet slår sedan upp varje bibliotek +i filen I<symbols>, eller i filen I<shlibs> (om den förstnämnda inte +existerar eller om debian/shlibs.local innehåller ett relevant +beroende). ). De båda filerna ska tillhandahållas av bibliotekspaketet och +borde därför vara tillgängliga som %ADMINDIR%/info/I<paket>.I<symbols> eller +/var/lib/dpkg/info/I<paket>.I<shlibs>. Paketnamnet identifieras i två steg: +biblioteksfilen lokaliseras på systemet (genom att slå upp i de kataloger +B<ld.so> skulle använt), och därefter används B<dpkg -S> I<biblioteksfil> +för att slå upp vilket paket biblioteket kommer från. + +=head2 Symbolfiler + +Symbolfiler innehåller mer finkornig beroendeinformation genom att ange det +minsta beroendet för varje symbol som exporteras av biblioteket. Skriptet +försöker hitta de symboler som är associerade med ett bibliotek på följande +platser (den första träffen används): + +=over + +=item debian/*/DEBIAN/symbols + +Information om delade bibliotek som skapats av den aktuella byggproceduren +som också anropade B<dpkg-shlibdeps>. De genereras av +B<dpkg-gensymbols>(1). De används endast om biblioteket finns i paketets +byggräd. Filen symbols i det byggträdet går före symbols-filer från andra +binärpaket. + +=item %PKGCONFDIR%/symbols/I<package>.symbols.I<arkitektur> + +=item %PKGCONFDIR%/symbols/I<paket>.symbols + +Överstyrningsfil för beroendeinformation för delade bibliotek, per +system. I<arkitektur> är det aktuella systemets arkitektur (hämtas från +B<dpkg-architecture -qDEB_HOST_ARCH>). + +=item Utdata från ”B<dpkg-query --control-path> I<package> symbols” + +Paketlokal överstyrande beroendeinformation för delade bibliotek. Filerna +befinner sig i %ADMINDIR% om inte överstyrt med B<--admindir>. + +=back + +B<dpkg-shlibs> kommer ihåg den (största) minimala version som behövs av +varje bibliotek när den söker genom de symboler som används av alla +binärfilerna. När proceduren är avslutad kan den visa det minsta beroende +som behövs av alla bibliotek som används (så tillvida informationen i +I<symbols>-filerna är korrekt). + +Som en säkerhetsåtgärd kan en symbols-fil innehålla metainformationsfältet +I<Build-Depends-Package>, varpå B<dpkg-shlibdeps> hämtar vilken minsta +version som behövs för paketet ur B<Build-Depends>-fältet och använder denna +version om den är högre än den minsta version som beräknats genom att söka +genom symbolerna. + +=head2 Shlibs-filer + +Shlibs-filer associerar ett bibliotek direkt till ett beroende (utan att se +på symbolerna). Det är därför oftare starkare än vad som egentligen behövs, +men mycket säkert och enkelt att hantera. + +Beroenden för ett bibliotek slås upp på flera platser. Den första filen som +innehåller information om det intressanta biblioteket används: + +=over + +=item debian/shlibs.local + +Paketlokal överstyrande beroendeinformation för delade bibliotek. + +=item %PKGCONFDIR%/shlibs.override + +Systemspecifik överstyrande beroendeinformation för delade bibliotek. + +=item debian/*/DEBIAN/shlibs + +Information om delade bibliotek som skapats av den aktuella byggproceduren +som också anropade B<dpkg-shlibdeps>. De genereras av +B<dpkg-gensymbols>(1). De används bara om biblioteket finns i paketets +byggträd. Filen shlibs i byggträdet går före shlibs-filer från andra paket. + +=item Utdata från ”B<dpkg-query --control-path> I<package> shlibs” + +Paketlokal överstyrande beroendeinformation för delade bibliotek. Filerna +befinner sig i %ADMINDIR% om inte överstyrt med B<--admindir>. + +=item %PKGCONFDIR%/shlibs.default + +Systemspecifik standardberoendeinformation för delade bibliotek. + +=back + +De utökade beroendena används sedan direkt (förutom om de filtrerats bort +för att de identifierats som dubbletter, eller svagare än ett annat +beroende). + +=head1 FLAGGOR + +B<dpkg-shlibdeps> tolkar argument som inte är flaggor som namn på körbara +filer, precis som om de angivits som B<-e>I<programfil>. + +=over + +=item B<-e>I<programfil> + +Ta med beroenden som är passar för delade bibliotek som krävs för +I<programfil>. Flaggan kan användas flera gånger. + +=item B<-l>I<katalog> + +Lägg till I<katalog> först i listan över kataloger som ska eftersökas efter +privata delade bibliotek (sedan dpkg 1.17.0). Flaggan kan användas flera +gånger. + +B<Observera>: Använd den här flaggan istället för att sätta +B<LD_LIBRARY_PATH>, eftersom miljövariabeln används för att styra +körtidslänkaren, och genom att utnyttja det för att ange sökvägen till +delade bibliotek vid kompilering kan det uppstå problem, till exempel vid +korskompilering. + +=item B<-d>I<beroendefält> + +Lägg till beroenden som ska läggas till till control-filens beroendefält +I<beroendefält>. (Beroenden för detta fält läggs in i variabeln +B<shlibs:>I<beroendefält>.) + +Flaggan B<-d>I<beroendefält> gäller för samtliga binärer efter flaggan, fram +till nästa B<-d>I<beroendefält>. Standardvärdet för I<beroendefält> är +B<Depends>. + +Om samma katalogpost (eller en uppsättning alternativ) förekommer i mer än +ett av de kända beroendefältnamnen B<Pre-Depends>, B<Depends>, +B<Recommends>, B<Enhances> eller B<Suggests> så kommer B<dpkg-shlibdeps> att +automatiskt ta bort beroendet från samtliga fält förutom det som anger de +viktigaste beroendena. + +=item B<-p>I<variabelnamnsprefix> + +Inled substitueringsvariabler med I<variabelnamnsprefix>B<:> i stället för +B<shlibs:>. På samma sätt kommer befintliga substitueringsvariabler som +inleds med I<variabelnamnsprefix>B<:> (i stället för B<shlibs:>) att tas +bort från substitueringsvariabelfilen. + +=item B<-O>[I<filnamn>] + +Skriv substitueringsvariabelinställningar på standard ut (eller I<filnamn> +om angivet, sedan dpkg 1.17.2), i stället för att försöka lägga till dem i +substitueringsvariabelfilen (som standard B<debian/substvars>). + +=item B<-t>I<typ> + +Föredra information om delade bibliotek som märkts för den givna +pakettypen. Om det inte finns någon märkt information används +omärkt. Standardpakettypen är B<deb>. Beroendeinformation för delade +bibliotek märks för en given typ genom att inleda det med namnet på typen, +ett kolon, samt blanktecken. + +=item B<-L>I<lokal-shlibs-fil> + +Läs överstyrande beroendeinformation om delade bibliotek från +I<lokal-shlibs-fil> i stället för B<debian/shlibs.local>. + +=item B<-T>I<substvars-fil> + +Skriv substitueringsvariabler i I<substvars-fil>; standard är +B<debian/substvars>. + +=item B<-V> + +Aktiverar pratsamt läge (sedan dpkg 1.14.8). Flera meddelanden visas för att +förklara vad B<dpkg-shlibs> håller på med. + +=item B<-x>I<paket> + +Uteslut paketet från de genererade beroendena (dpkg 1.14.8). Flaggan är +användbar för att undvika självberoenden för paket som innehåller +ELF-binärer (exekverbara eller biblioteksinsticksprogram) som använder ett +bibliotek som ligger i samma paket. Flaggan kan användas flera gånger för +att utesluta flera paket. + +=item B<-S>I<paketbyggkatalog> + +Se först i I<paketbyggkatalog> vid försök att hitta ett bibliotek (sedan +dpkg 1.14.15). Användbart när källkodspaketet bygger flera varianter av +samma bibliotek och du vill se till att du får beroendet från ett givet +binärpaket. Flaggan kan användas flera gånger: kataloger söks efter i samma +ordning före kataloger från andra binärpaket. + +=item B<-I>I<paketbyggkatalog> + +Ignorera I<paketbyggkatalog> vid sökning efter delade shlibs, symboler och +delade biblioteksfiler (sedan dpkg 1.18.5). Flaggan kan användas flera +gånger. + +=item B<--ignore-missing-info> + +Misslyckas inte om det inte upptäcks någon beroendeinformation för ett delat +bibliotek (sedan dpkg 1.14.8). Den här flaggan rekommenderas inte, alla +bibliotek bör tillhandahålla beroendeinformation (antingen med shlibs-filer +eller med symbols-filer), även om de ännu inte används av andra paket. + +=item B<--warnings=>I<värde> + +I<Värde> är ett bitfält som anger de varningar som kan ges av +B<dpkg-shlibdeps> (sedan dpkg 1.14.17). Bit 0 (värde=1) aktiverar varningen +”symbolen I<sym>, som används av I<binär>, hittades inte i något av +biblioteken”, bit 1 (värde=2) aktiverar varningen ”paketet kunde undvika ett +onödigt beroende” och bit 2 (värde=4) aktiverar varningen ”I<binär> borde +inte vara länkat mot I<bibliotek>”. Standard för I<värde> är 3: de första +två varningarna är aktiva som standard, men inte den sista. Sätt I<värde> +till 7 om du vill att alla varningar ska vara aktiva. + +=item B<--admindir=>I<kat> + +Ändra platsen för B<dpkg>-databasen (sedan dpkg 1.14.0). Förvald plats är +I<%ADMINDIR%>. + +=item B<-?>, B<--help> + +Visar hjälpskärm och avslutar. + +=item B<--version> + +Visar version och avslutar. + +=back + +=head1 MILJÖVARIABLER + +=over + +=item B<DPKG_COLORS> + +Väljer färgläge (sedan dpkg 1.18.5). För närvarande godtas följande värden: +B<auto> (förval), B<always> och B<never>. + +=item B<DPKG_NLS> + +Om satt, används för att bestämma om lokalt språkstöd ska aktiveras, även +känt som internationaliseringsstöd (eller i18n) (sedan dpkg +1.19.0). Tillåtna värden är: B<0> och B<1> (förval). + +=back + +=head1 DIAGNOSTIK + +=head2 Varningar + +Eftersom B<dpkg-shlibdeps> analyserar mängden symboler som används av varje +binärfil i det genererade paketet, kan det i flera fall skriva ut +varningsmeddelanden. De visar på saker som kan förbättras i paketet. I de +flesta fall gäller förbättringarna direkt uppströmskällkoden. Här är de +varningar du kan stöta på, i fallande allvarlighetsgrad: + +=over + +=item B<symbolen> I<sym>B<, som används av> I<binär>B<, hittades inte i något av +biblioteken.> + +Den omnämnda symbolen hittades inte i biblioteken som länkas mot +binären. I<Binär> är antagligen ett bibliotek och måste länkas mot ett annat +bibliotek under byggproceduren (länkarflaggan B<-l>I<bibliotek>). + +=item I<binär> B<innehåller en referens till symbolen> I<sym> B<som inte kan +kopplas; det är troligen ett insticksprogram> + +Den angivna symbolen hittades inte i biblioteken som länkats mot +binären. I<Binär> är antagligen ett insticksprogram och symbolen +tillhandahålls av programmet som läser in det. I teorin har inte +insticksprogram något SONAME, men den här binären har ett och därmed kunde +det inte tydligt identifieras som insticksprogram. Det faktum att binären +befinner sig i en icke-offentlig katalog är dock en stark indikation på att +det inte är ett vanligt delat bibliotek. Om binären faktiskt är ett +insticksprogram kan du ignorera varningen. Det är dock alltid möjligt att +det är ett riktigt bibliotek och att program som länker det använder en +RPATH så att den dynamiska länkaren hittar det. Om så är fallet är +biblioteket trasigt och behöver fixas. + +=item B<paketet kan undvika ett onödigt beroende om> I<binär> B<inte länkades mot> +I<bibliotek> B<(det använder inget av bibliotekets symboler)> + +Ingen av I<binärer>na som länkas mot I<bibliotek> använder någon av +symbolerna som tillhandahålls av biblioteket. Genom att rätta alla binärer +kan du undvika beroendet som gäller detta bibliotek (såvida inte samma +beroende även genereras av ett annat bibliotek som faktiskt används). + +=item B<paketet kunde undvika ett onödigt beroende om> I<binärer> B<inte länkades +mot> I<bibliotek> B<(de använder inga av bibliotekets symboler)> + +Exakt samma varning som ovan, men för flera binärer + +=item I<binär> B<borde inte vara länkat mot> I<bibliotek> B<(det använder inget av +bibliotekets symboler)> + +I<Binär> länkar mot ett bibliotek den inte behöver. Det är inte ett problem, +Men genom att inte länka biblioteket mot binären kan man uppnå en mindre +prestandaförbättring. Varningen kontrollerar samma information som den +föregående, men gör det för varje binär istället för att utföra kontrollen +globalt på alla analyserade binärer. + +=back + +=head2 Fel + +B<dpkg-shlibdeps> kommer att misslyckas om det inte hittar ett öppet +bibliotek som en av binärerna använder, eller om biblioteket saknar +associerad beroendeinformation (antingen en shlibs-fil eller en +symbols-fil). Ett öppet bibliotek har ett SONAME och är versionshanterad +(libvadsomhelst.so.I<X>). Ett privat bibliotek (till exempel ett +insticksprogram) bör inte ha något SONAME och behöver inte vara +versionshanterat. + +=over + +=item B<hittade inte biblioteket> I<bibliotek-sonamn> B<som behövs för> I<binär> +B<(dess RPATH är ">I<rpath>B<")> + +I<Binär> använder ett bibliotek som heter I<bibliotek-sonamn>, men +B<dpkg-shlibdeps> kunde inte hitta biblioteket. B<dpkg-shlibdeps> skapar en +lista över kataloger det ser i på följande sätt: katalogerna som beskrivs i +RPATH i binären, kataloger som lagts till med flaggan B<-l>, kataloger i +miljövariabeln B<LD_LIBRARY_PATH>, kors-multiarkitekturskataloger (t.ex +/lib/arm64-linux-gnu, /usr/lib/arm64-linux-gnu), vanliga öppna kataloger +(/lib, /usr/lib), kataloger listade i /etc/ld.so.conf, samt föråldrade +multilib-kataloger (/lib32, /usr/lib32, /lib64, /usr/lib64). Därefter ser +det i motsvarande kataloger i byggträdet för paketet som innehåller binären +som analyseras, i paketbyggträdet som anges med kommandoradsflaggan B<-S>, i +andra pakets byggträd som innehåller en DEBIAN/shlibs-fil och slutligen i +rotkatalogen. Om biblioteket inte hittas i någon av dessa kataloger får du +det här felmeddelandet. + +Om biblioteket som inte hittades ligger i en privat katalog i samma paket +bör du lägga till katalogen med B<-l>. Om det finns i ett annat binärpaket +som byggs bör du se till att shlibs- eller symbols-filen för paketet redan +har skapats och att B<-l> innehåller korrekt katalog som det också ligger i +en privat katalog. + +=item B<hittade ingen beroendeinformation för> I<biblioteksfil> B<(använd av> +I<binär>B<).> + +Biblioteket som behövs av I<binär> hittades i I<biblioteksfil> av +B<dpkg-shlibdeps>, men B<dpkg-shlibdeps> kunde inte hitta någon +beroendeinformation för biblioteket. För att hitta beroendet har det försökt +koppla biblioteket mot ett Debianpaket med hjälp av B<dpkg -S> +I<biblioteksfil>. Därefter såg det i motsvarande shlibs- och symbols-filer i +%ADMINDIR%/info/, samt i de olika paketens byggträd (debian/*/DEBIAN/). + +Det här felet kan orsakas av felaktiga eller saknade shlibs- eller +symbols-filer i bibliotekets paket. Det kan även inträffa om biblioteket +byggts i samma källkodspaket och om shlibs-filen ännu inte har skapats (då +måste du fixa debian/rules så att det skapar shlibs-filen innan det anropar +B<dpkg-shlibdeps>). Felaktig RPATH kan också leda till att biblioteket +hittas under ett icke-kanoniskt namn (till exempel: +/usr/lib/openoffice.org/../lib/libssl.so.9.8 istället för +/usr/lib/libssl.so.0.9.8) som inte associeras till något paket, +B<dpkg-shlibdeps> försöker gå runt detta genom att falla tillbaka på ett +kanoniskt namn (med B<realpath>(3)), men det fungerar kanske inte +alltid. Det är alltid bäst att städa upp RPATH i binären för att undvika +problem. + +Om du anropar B<dpkg-shlibdeps> i pratsamt läge (B<-v>) kommer det ge mycket +mer information om var det försökte hitta beroendeinformationen. Det kan +vara användbart om du inte förstår varför du får felmeddelandet. + +=back + +=head1 SE ÄVEN + +B<deb-shlibs>(5), B<deb-symbols>(5), B<dpkg-gensymbols>(1). + + +=head1 ÖVERSÄTTNING + +Peter Krefting och Daniel Nylander. |