Genom att använda pbuilder som paketbyggare kan du bygga paketet i en chroot-miljö. Du kan bygga binära paket utan att använda pbuilder, men du måste ha alla bygg-beroenden installerade på din dator först. Pbuilder låter paketeraren kontrollera byggberoendena eftersom paketet byggs i en minimal Ubuntu-installation, och byggberoendena laddas ner enligt filen debian/control
.
Här följer en kort guide i hur du installerar, använder och uppdaterar en pbuildermiljö. Det finns dock många detaljer i användningen av pbuilder som inte får plats i den här guiden. Manualsidan för pbuilder har mycket information och bör konsulteras om du har problem eller behöver mer detaljerad information.
Det första, och kanske det mest uppenbara, du behöver göra är att installera pbuilder. Om du vill skapa en pbuilder för en nyare utgåva än den du har installerad för stunden behöver du manuellt installera .deb-filen för debootstrap (från packages.ubuntu.com) från den nyare utgåvan. För att skapa en pbuilder, kör:
sudo pbuilder create --distribution <distro> \ --othermirror "deb http://archive.ubuntu.com/ubuntu <distro> universe multiverse"
där <distro> är den utgåva du vill skapa en pbuilder för (till exempel edgy). Om du vill skapa mer än en pbuilder kan du lägga till flaggan --basetgz med den önskade platsen där du vill lägga pbuilder-miljön. Standardplatsen är /var/cache/pbuilder/base.tgz
. Om du väljer att använda --basetgz måste du använda det med andra pbuilder-kommandon så att pbuilder vet vilken komprimerad miljö det ska använda.
Att skapa en pbuilder-miljö tar lite tid eftersom debootstrap helt enkelt laddar ner en minimal Ubuntu-installation.
Nu när du har en fungerande pbuilder kan du bygga binära paket från källkod genom att köra:
sudo pbuilder build *.dsc
Det här kommer att bygga alla källpaket i den katalog du står i. De .deb-filer och källpaket som skapas hittar du sedan i /var/cache/pbuilder/result/
(som du kan ändra med flaggan --buildresult).
Du bör alltid se till att ha en aktuell pbuilder när du testar dina källpaket, speciellt när du bygger paket för en utvecklingsmiljö som ändras snabbt, för att se till att alla beroenden hittas ordentligt. För att uppdatera din pbuilder, skriv:
sudo pbuilder update
Om du vill uppgradera din pbuilder-miljö till en ny utgåva kan du anväda pbuilder update tillsammans med flaggan --distribution:
sudo pbuilder update --distribution <newdistro> --override-config