dpkg-buildpackage(1)

NAMN
dpkg-buildpackage - bygg binär- eller källkodspaket från källkod

SYNOPS
dpkg-buildpackage [flaggor]

BESKRIVNING
dpkg-buildprogram är ett program som automatiserar processen med att bygga ett Debianpaket. Det består av följande steg:

1.  Byggmiljön förbereds genom att diverse miljövariabler sätts (se MILJÖVARIABLER).

2.  Byggberoenden och -konflikter kontrolleras att de uppfylls (såvida inte -d anges).

3.  Om ett specifikt mål har valts med flaggan -T eller --target anropas det målet, varpå programmet avslutas. I annat fall anropas fakeroot debian/rules clean för att städa byggträdet (såvida inte -nc anges).

4.  dpkg-source anropas för att skapa källkodspaketet (såvida inte ett bygge av enbart binärer har valts med -b, -B eller -A).

5.  debian/rules build anropas, följt av fakeroot debian/rules binärmål (såvida inte ett bygge av enbart källkod har valts med -S). Observera att binärmål är ett av binary (standardval, eller om -b anges), binary-arch (om -B anges) eller binary-indep (om -A anges).

6.  gpg anropas för att signera .dsc-filen (om sådan finns, såvida inte -us anges).

7.  dpkg-genchanges anropas för att skapa en .changes-fil. Många av flaggorna till dpkg-buildpackage vidaresänds till dpkg-genchanges.

8.  gpg anropas för att signera .changes-filen (såvida inte -uc anges).

9.  Om -tc anges anropas fakeroot debian/rules clean ytterligare en gång.

FLAGGOR

-b  Anger att enbart binära paket skall byggas, inga källkodsfiler byggs och/eller distribueras. Sänds vidare till dpkg-genchanges.

-B  Anger att enbart binära paket skall byggas, begränsat till arkitekturberoende paket. Sänds vidare till dpkg-genchanges.

-A  Anger att enbart binära paket skall byggas, begränsat till arkitekturoberoende paket. Sänds vidare till dpkg-genchanges.

-S  Anger att enbart källkodspaket skall byggas, inga binärpaket behöver byggas. Sänds vidare till dpkg-genchanges.

--target=mål
--target mål
-Tmål
    Anropar debian/rules mål efter att ha konfigurerat byggmiljön, och avbryter byggprocessen efteråt. Om --as-root också anges körs kommandot som root (se -r). Observera att officiella mål som måste köras som root inte behöver flaggan.

--as-root
    Endast meningsfull tillsammans med --target. Kräver att målet körs med root-behörighet.

-si
-sa
-sd
-vversion
-Cändringsbeskrivning
-mpaketansvarige-adress
-epaketansvarige-adress
    Sänds vidare utan ändringar till dpkg-genchanges. Se dess manualsida.

-aarkitektur
    Ange Debianarkitekturen vi bygger för. Arkitekturen för maskinen vi bygger på bestäms automatiskt, och är även standard för värdmaskinen. Om värdarkitekturen skiljer sig från byggarkitekturen (till exempel vid korskompilering), och om miljövariabeln PKG_CONFIG_LIBDIR inte är satt, så kommer den att sättas till ett värde lämpligt för korskompilering ("/usr/gnu-systemtyp/lib/pkgconfig/:/usr/share/pkgconfig").

-tgnu-systemtyp
    Ange GNU-systemtyp vi bygger för. Den kan användas i stället för -a eller som ett komplement för att överstyra standard-GNU-systemtypen för Debian-målarkitekturen.

-jjobb
    Antalet jobb som tillåts att köras samtidigt, motsvarar make(1)-flaggan med samma namn. Lägger till sig själv i miljövariabeln MAKEFLAGS, vilket får alla påföljande make-anrop att ärva flaggan. Lägger även till flaggan parallel=jobb till miljövariabeln DEB_BUILD_OPTIONS, vilket gör det möjligt för debian/rules-filer att använda informationen för egna ändamål. Värdet parallel=jobb i miljövariabeln DEB_BUILD_OPTIONS kommer att överstyra värdet för -j om den flaggan ges.

-D  Kontrollera byggberoenden och -konflikter; avbryt om de inte uppfylls. Detta är standardbeteendet.

-d  Kontrollera inte byggberoenden eller -konflikter.

-nc Städa inte upp byggträdet (implicerar -b om inget annat har valts bland -B, -A eller -S).

-tc Städa källkodsträdet (använder få-root-kommando debian/rules clean) efter att paketet har byggts.

-rfå-root-kommando
    När dpkg-buildpackages behöver exekvera delar av byggprocessen som root sätter den kommandot som skall exekveras efter få-root-kommando om ett sådant har angivits. Om inte kommer fakeroot att användas som standard, om kommandot existerar. få-root-kommando måste börja med namnet på det faktiska kommandot som skall anropas samt de parametrar det skall anropas med. få-root-kommando kan innehålla parametrar (de måste vara avdelade med blanksteg) men inga skalmetatecken. få-root-kommando kan typiskt vara fakeroot, sudo, super eller really. su är inte lämpligt eftersom det kräver flaggan -c för att köra ett kommando och även då kan det bara starta användarens skal med -c istället för att sända flaggor individuellt till kommandot som skall startas.

-Rregelfil
    För att bygga ett Debianpaket körs normalt kommandot debian/rules med flera olika standardparametrar. Den här flaggan gör det möjligt att använda ett annat programanrop för att bygga paketet (det kan innehålla blankstegsavdelade parametrar). Den kan även användas för att exekvera standardregelfilen med ett annat make-program (till exempel genom att använda /usr/local/bin/make -f debian/rules som regelfil).

-psigneringskommando
    När dpkg-buildpackage måste exekvera GPG eller PGP för att signera ett källkodsstyrfil (.dsc) eller en .changes-fil kör det signeringskommando (det letar i PATH om så behövs) istället för gpg. signeringskommando får de argument gpg skulle ha fått. Om signeringskommando tar kommandon enligt GPG- istället för PGP-stil måste du ge flaggan -sgpg. signeringskommando får inte innehålla blanksteg eller andra skalmetatecken.

-knyckel-id
    Ange nyckel-id att använda vid signering av paket.

-us Signera inte källkodspaketet.

-uc Signera inte .changes-filen.

-i[reguljärt-uttryck]
-I[mönster]
-s[nsAkurKUR]
-z, -Z
    Sänds vidare utan ändringar till dpkg-source. Se dess manualsida.

--admindir=kat
--admindir kat
    Ändra platsen för dpkg-databasen. Förval är /var/lib/dpkg.

-h, --help
    Visar hjälpskärm och avslutar.

--version
    Visar version och avslutar.

MILJÖVARIABLER

  Variabler som sätts av dpkg-architecture
dpkg-architecture anropas med flaggorna -a och -t vidaresända. Variabler som skrivs ut via dess -s-flagga integreras i byggmiljön.

  Kompileringsflaggor
Ett par miljövariabler som anger kompilator- och länkarflaggor återställs till sina standardvärden såvida de inte redan har satts i miljön. Observera att denna mekanism introducerades först i dpkg-dev version 1.14.17 och att inte alla rules-filer och byggverktyg ännu godtar dessa variabler.

CFLAGS
    Optimeringsflaggor som sänds till Debians byggsystem och kan/bör överstyras av paketet som byggs om så behövs (standardvärde: -g -O2, eller -g -O0 om noopt anges i DEB_BUILD_OPTIONS). Överstyrda flaggor kan användas för att explicit välja en högre optimeringsnivå, eller för att förbigå kompilatorfel som bara ses med vissa optimeringsnivåer (den sist satta optimeringsnivån "vinner").

CFLAGS_APPEND
    Optimeringsflaggor som läggs till kompilatorflaggorna, vilka inte får skrivas över av paketet (används huvudsakligen för testbyggen). Standardvärde: tomt.

CXXFLAGS
    Samma som CFLAGS för C++-källkod.

CXXFLAGS_APPEND
    Samma som CFLAGS_APPEND för C++-källkod.

FFLAGS
    Samma som CFLAGS för Fortrankällkod.

FFLAGS_APPEND
    Samma som CFLAGS_APPEND för Fortrankällkod.

CPPFLAGS
    Förprocessorflaggor som sänds till Debians byggsystem och kan/bör överstyras av paketet som byggs om så behövs (standardvärde: tomt). Detta makro används sällan (de flesta byggsystem använder helt enkelt CFLAGS istället för CPPFLAGS).

CPPFLAGS_APPEND
    Förprocessorflaggor som läggs till förprocessorflaggorna, vilka inte får skrivas över av paketet (används huvudsakligen för testbyggen). Standardvärde: tomt.

LDFLAGS
    Flaggor som sänds till kompilatorn vid länkning av binärer eller delade objekt (om länkaren anropas direkt måste -Wl och , tas bort från dessa flaggor). Standardvärde: tomt.

LDFLAGS_APPEND
    Flaggor som läggs till kompilatorflaggorna vid länkning av kod, vilka inte får skrivas över av paketet (används huvudsakligen för testbyggen). Standardvärde: tomt.

PROGRAMFEL
Det borde vara möjligt att ange blanksteg och skalmetatecken i, och inledande argument för, få-root-kommando och signeringskommando.

SE ÄVEN
dpkg-source(1), dpkg-architecture(1), dpkg-genchanges(1), fakeroot(1), gpg(1).

FÖRFATTARE
Upphovsrättsskyddat © 1995-1996 Ian Jackson
Upphovsrättsskyddat © 2000 Wichert Akkerman
Upphovsrättsskyddat © 2007 Frank Lichtenheld
Upphovsrättsskyddat © 2008 Raphaël Hertzog

Detta är fri programvara; se GNU General Public License version 2 eller senare för kopieringsvillkor. Det finns INGEN GARANTI.

ÖVERSÄTTNING
Peter Krefting och Daniel Nylander.