Hi Kasper,

[removing Iulian from the Cc to not bother him with this.]

Kasper Peeters wrote:
> Shouldn't be too difficult to fix, but I'll need a Debian install here
> to be able to play. Tried 'testing' in a VirtualBox this weekend but
> that just boots to a black screen. What's the best/recommended way to
> get gcc6 on a Debian 8.6 system?

Using pbuilder (creates on-demand throw-away chroots of other Debian
or
Ubuntu releases) is probably the easiest way to build packages:

(A "#" indicates that these commands need to be run with root
permissions. Using "sudo" should suffice. A "chroot#" indicates that
this command should be issues inside the chroot.)

  # apt-get install pbuilder
  # pbuilder create

(By default it creates a Debian Unstable chroot, otherwise use e.g.
"env DIST=testing pbuilder create".)

>From there on there is a tar ball of a virgin Debian Unstable (or
whatever distribution you requested) available for ondemand
extraction. The tar ball is minimal, but targetted towards for
building packages (i.e. make, gcc, g++, etc. are already installed)
and which gets extracted upon every package build or login.

You can use it in multiple ways as it's targetted towards Debian
package development and building. But I assume you rather need
something to do upstream development, so most automatisms are not that
much of help for you. So just logging in into the chroot is probably
most suitable for your needs:

  # pbuilder login
  W: /root/.pbuilderrc does not exist
  I: Building the build Environment
  I: extracting base tarball [/var/cache/pbuilder/sid-base.tgz]
  I: creating local configuration
  I: copying local configuration
  I: mounting /proc filesystem
  I: mounting /run/shm filesystem
  I: mounting /dev/pts filesystem
  I: policy-rc.d already exists
  I: Obtaining the cached apt archive contents
  I: entering the shell
  File extracted to: /var/cache/pbuilder/build//28735
  
  W: no hooks of type F found -- ignoring
  root@<your-host-name-but-inside-chroot>:/# 

The you either copy or mount your development tree into the chroot
(exact path varies, but is shown upon login, see example above).

If build dependencies haven't changed much since 1.39, you should get
them all with this command inside the chroot:

  chroot# apt-get build-dep cadabra

You also may want to have everything you need to work with autotools.
The command

  chroot# apt-get install dh-autoreconf

will get all you need. (dh-autoreconf is a packaging helper which
itself you won't need, but it pulls in autoconf, automake, autopoint
and libtool, hence is also convenient as meta-package. :-)

Beware that after exiting that shell, everything inside the chroot
will be removed and lost. (The cached tar ball will not be touched
unless explicitly requested. But once downloaded packages for
installation will be cached. Use "pbuilder clean" as root to clean up
the package cache and potential leftovers in the build directories.)

Once after a while you want to upgrade the tar ball to the newest
packages, especially those with Debian Unstable or Testing. Use 

  # pbuilder update

for that.

Hope this helps.

                Regards, Axel
-- 
 ,''`.  |  Axel Beckert <a...@debian.org>, http://people.debian.org/~abe/
: :' :  |  Debian Developer, ftp.ch.debian.org Admin
`. `'   |  4096R: 2517 B724 C5F6 CA99 5329  6E61 2FF9 CD59 6126 16B5
  `-    |  1024D: F067 EA27 26B9 C3FC 1486  202E C09E 1D89 9593 0EDE

Reply via email to