Container Image Update 201512-01

gcc

#1

We will update our build container image between 26th and 29th Dec.

The goal of this update is fairly simple: setting GCC 4.9.2 as the default version in the container image.

If you want to keep using older versions of GCC, you can do so with update-alternatives as described in our doc.


#2

We’ve finished rolling out this update. Now, gcc 4.9 is the default version.

Please let us know if you find any issues.


#3

Hey guys, been getting this everytime I try to run a test today:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 50 --slave /usr/bin/g++ g++ /usr/bin/g+±4.9

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 50 --slave /usr/bin/g++ g++ /usr/bin/g+±4.9 returned exit code 2

update-alternatives: error: alternative g++ can’t be slave of gcc: it is a master alternative. Action failed: sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 50 --slave /usr/bin/g++ g++ /usr/bin/g+±4.9


#4

Were there any other changes in the container? I’m seeing builds fail that passed two days ago (straight retry of a passing build), so I’m just trying to track down possible causes.

In general, is there a changelog somewhere for the build container? That would be really useful, since we’ve hit failing builds due to tool version changes several times now, and it’s a pain to pin versions of everything.


#5

@Plummat I thought you don’t have to do update-alternatives anymore to use 4.9. Can you remove them?


#6

@cvermilion

Not as far as I know.

In general, is there a changelog somewhere for the build container?

This is a great idea. It’s a bit hard to look but here is the entire change. I’ll post the entire changelog with nice format from the next time.

Changes after installing fortran.

package old-version new-version
c++ 4.6.4 4.9.2
cc 4.6.4 4.9.2
git-man 2:2.6.3-1avh1~precise1 2:2.6.4-1avh1~precise1
heroku 3.42.22 3.42.25
heroku-toolbelt 3.42.22 3.42.25
icedtea-6-jre-cacao 6b36-1.13.8-0ubuntu1~12.04 6b37-1.13.9-1ubuntu0.12.04.1
icedtea-6-jre-jamvm 6b36-1.13.8-0ubuntu1~12.04 6b37-1.13.9-1ubuntu0.12.04.1
libgfortran-4.7-dev 4.7.3-2ubuntu1~12.04
libgfortran-4.8-dev 4.8.1-2ubuntu1~12.04
libgfortran-4.9-dev 4.9.2-0ubuntu1~12.04
libgnutls-dev 2.12.23-12ubuntu2.2 2.12.23-12ubuntu2.3
libgnutls-openssl27 2.12.23-12ubuntu2.2 2.12.23-12ubuntu2.3
libgnutls26 2.12.23-12ubuntu2.2 2.12.23-12ubuntu2.3
libgnutls26:i386 2.12.23-12ubuntu2.2 2.12.23-12ubuntu2.3
libgnutlsxx27 2.12.23-12ubuntu2.2 2.12.23-12ubuntu2.3
liblxc1 1.0.7-0ubuntu0.10 1.0.8-0ubuntu0.3
libsndfile1 1.0.25-4 1.0.25-4ubuntu0.1
libsndfile1-dev 1.0.25-4 1.0.25-4ubuntu0.1
libsndfile1:i386 1.0.25-4 1.0.25-4ubuntu0.1
libssl-dev 1.0.1-4ubuntu5.31 1.0.1-4ubuntu5.32
libssl-doc 1.0.1-4ubuntu5.31 1.0.1-4ubuntu5.32
libssl1.0.0 1.0.1-4ubuntu5.31 1.0.1-4ubuntu5.32
libssl1.0.0:i386 1.0.1-4ubuntu5.31 1.0.1-4ubuntu5.32
linux-libc-dev 3.2.0-94.134 3.2.0-95.135
lxc 1.0.7-0ubuntu0.10 1.0.8-0ubuntu0.3
lxc-templates 1.0.7-0ubuntu0.10 1.0.8-0ubuntu0.3
ntp 1:4.2.6.p3+dfsg-1ubuntu3.6 1:4.2.6.p3+dfsg-1ubuntu3.7
ntpdate 1:4.2.6.p3+dfsg-1ubuntu3.6 1:4.2.6.p3+dfsg-1ubuntu3.7
openjdk-6-jdk 6b36-1.13.8-0ubuntu1~12.04 6b37-1.13.9-1ubuntu0.12.04.1
openjdk-6-jre 6b36-1.13.8-0ubuntu1~12.04 6b37-1.13.9-1ubuntu0.12.04.1
openjdk-6-jre-headless 6b36-1.13.8-0ubuntu1~12.04 6b37-1.13.9-1ubuntu0.12.04.1
openjdk-6-jre-lib 6b36-1.13.8-0ubuntu1~12.04 6b37-1.13.9-1ubuntu0.12.04.1
openjdk-7-jdk 7u85-2.6.1-5ubuntu0.12.04.1 7u91-2.6.3-0ubuntu0.12.04.1
openjdk-7-jre 7u85-2.6.1-5ubuntu0.12.04.1 7u91-2.6.3-0ubuntu0.12.04.1
openjdk-7-jre-headless 7u85-2.6.1-5ubuntu0.12.04.1 7u91-2.6.3-0ubuntu0.12.04.1
openssl 1.0.1-4ubuntu5.31 1.0.1-4ubuntu5.32
python3-lxc 1.0.7-0ubuntu0.10 1.0.8-0ubuntu0.3
qemu-utils 2.0.0+dfsg-2ubuntu1.20 2.0.0+dfsg-2ubuntu1.21

#7

Thanks @kimh this is really helpful!


#8

https://circleci.com/docs/1.0/environment/ is not updated to reflect that change.


#9