Personal tools

Log in

Changes

From IGEP - ISEE Wiki

Jump to: navigation, search

Debian distro

3,553 bytes added, 21:45, 24 June 2019
Pbuilder
=Host Enviroment=
We suggest use Debian 9.02 (64 bits) in your host, you can download it from our server using this [http://downloads.isee.biz/pub/igepv5_ce/devel/iso/ubuntu-12.04.4-desktop-i386.iso link] or directly from debian [https://cdimage.debian.org/debian-cd/current-live/amd64/iso-hybrid/debian-live-9.2.0-amd64-cinnamon.iso website]. You can install it in a Virtual Machine enviroment using any Virtualization software or directly in your PC.
After install is recommended update the package list with:
==Install Development packages==
Now is time to install some packages if you want to build your own distribution.
 
===GCC, G++, libc Cross Compiler===
You can install the cross compiler if you want to build u-boot, linux kernel or applications using your host PC and compile for IGEP board as target.
 
<pre>sudo apt-get install gcc-arm-linux-gnueabi gcc-arm-linux-gnueabihf g++-arm-linux-gnueabi g++-arm-linux-gnueabihf libc6-armel-cross libc6-armhf-cross libc6-dev-armhf-cross libc6-dev-armel-cross crossbuild-essential-armel crossbuild-essential-armhf
</pre>
 
===Build Ubuntu packages===
if you're idea is build ubuntu packages then you need install other packages
 
<pre>sudo apt-get install build-essential devscripts dh-make quilt autogen autoconf dh-autoreconf dh-buildinfo dh-make pkg-config kernel-package debootstrap
</pre>
 
===Pbuilder===
A [https://wiki.ubuntu.com/PbuilderHowto pbuilder] environment is a chrooted environment which can have a different distro series or architecture than your host system.
 
<pre>sudo apt-get install pbuilder pbuilder-scripts qemu-user-static debian-keyring debian-archive-keyring ubuntu-keyring emdebian-archive-keyring debian-ports-archive-keyring</pre>
 
Create ~/.pbuilderrc file with your own pbuilder setup script, upu can use below script:
 
<pre class="brush:bash/shell"># !/bin/sh
set -e
if [ "$OS" == "debian" ]; then
MIRRORSITE="http://ftp.no.debian.org/debian/"
COMPONENTS="main contrib non-free"
DEBOOTSTRAPOPTS=("${DEBOOTSTRAPOPTS[@]}"
"--keyring=/usr/share/keyrings/debian-archive-keyring.gpg")
: ${DIST:="wheezy"}
: ${ARCH:="amd64"}
if [ "$DIST" == "wheezy" ]; then
#EXTRAPACKAGES="$EXTRAPACKAGES debian-backports-keyring"
OTHERMIRROR="$OTHERMIRROR | deb $MIRRORSITE wheezy-backports $COMPONENTS"
fi
elif [ "$OS" == "raspbian" ]; then
MIRRORSITE="http://ftp.acc.umu.se/mirror/raspbian/raspbian/"
COMPONENTS="main contrib non-free"
DEBOOTSTRAPOPTS=("${DEBOOTSTRAPOPTS[@]}"
"--keyring=/usr/share/keyrings/raspbian-archive-keyring.gpg")
: ${DIST:="wheezy"}
: ${ARCH:="armhf"}
elif [ "$OS" == "ubuntu" ]; then
MIRRORSITE="http://no.archive.ubuntu.com/ubuntu/"
COMPONENTS="main restricted universe multiverse"
DEBOOTSTRAPOPTS=("${DEBOOTSTRAPOPTS[@]}"
"--keyring=/usr/share/keyrings/ubuntu-archive-keyring.gpg")
else
echo "Unknown OS: $OS"
exit 1
fi
if [ "$DIST" == "" ]; then
echo "DIST is not set"
exit 1
fi
if [ "$ARCH" == "" ]; then
echo "ARCH is not set"
exit 1
fi
NAME="$OS-$DIST-$ARCH"
if [ "$ARCH" == "armel" ] && [ "$(dpkg --print-architecture)" != "armel" ]; then
DEBOOTSTRAP="qemu-debootstrap"
fi
if [ "$ARCH" == "armhf" ] && [ "$(dpkg --print-architecture)" != "armhf" ]; then
DEBOOTSTRAP="qemu-debootstrap"
fi
DEBOOTSTRAPOPTS=("${DEBOOTSTRAPOPTS[@]}" "--arch=$ARCH")
BASETGZ="/var/cache/pbuilder/$NAME-base.tgz"
DISTRIBUTION="$DIST"
BUILDRESULT="/var/cache/pbuilder/$NAME/result/"
APTCACHE="/var/cache/pbuilder/$NAME/aptcache/"
BUILDPLACE="/var/cache/pbuilder/build"
HOOKDIR="/var/cache/pbuilder/hook.d/"
</pre>
 
The .pbuilderrc file cares about three environment variables:
 
OS: Either debian, raspbian, or ubuntu
DIST: For example wheezy, jessie, trusty, stretch ...
ARCH: For example amd64, i386, armel, or armhf
 
Examples:
 
<pre>sudo OS=debian DIST=wheezy ARCH=amd64 pbuilder --create
sudo OS=debian DIST=wheezy ARCH=i386 pbuilder --create
sudo OS=debian DIST=wheezy ARCH=armel pbuilder --create
sudo OS=debian DIST=wheezy ARCH=armhf pbuilder --create
</pre>