gbs chroot
Use the chroot
subcommand to chroot to the build root directory, which is generated by the GBS build.
For command usage details, enter:
$ gbs chroot --help
Note
The default location of the build root is located in
~/GBS-ROOT/local/scratch.{arch}.*
. The location is different if the-B
option is specified while running the GBS build.
Examples:
-
Create a build root with extra packages added to the build root:
$ gbs build --extra-packs=zypper,vim -A i586 # install zypper,vim to build root
For more GBS build options, see gbs build.
-
Chroot to the build root:
$ gbs chroot ~/GBS-ROOT/local/scratch.i686.0/
-
Chroot as a “root” user:
$ gbs chroot -r ~/GBS-ROOT/local/scratch.i686.0/
If the command fails with a “su: user root does not exist” error, it is caused by a Tizen repository. Fix the problem by adding a root user manually by editing the following 2 files:
$ echo "root:x:0:0:root:/root:/bin/bash" >>path/to/buildroot/etc/passwd $ echo "root:x:0:" >>path/to/buildroot/etc/group
-
Chroot and install extra packages into the build root directory for development purposes:
chroot as 'root': $ gbs chroot -r ~/GBS-ROOT/local/scratch.i686.0/ Configure tizen repo in the chroot env: # zypper ar http://download.tizen.org/releases/daily/<release_id>/repos/main/ia32/packages tizen-main # zypper ar http://download.tizen.org/releases/daily/<release_id>/repos/base/ia32/packages tizen-base Install extra packages, for example, install gdb. # zypper refresh # zypper -n install gdb gcc
For https repositories, you must specify the
ssl_verify=no
option:# zypper ar https://user:passwd@tizen.org/releases/daily/<release_id>/repos/main/ia32/packages/?ssl_verify=no tizen-main
Note
- To use the
gbs chroot
command as “root”, specify the-r
option. Then zypper can be used to install and remove packages.- To install packages in the build root environment, specify the
-n
option:
zypper -n install gdb