How to use GCC 4.7 in place of 4.6?

24,708

The following worked for me.

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.6 
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.7 40 --slave /usr/bin/g++ g++ /usr/bin/g++-4.7 
sudo update-alternatives --config gcc

Source for reference

Share:
24,708

Related videos on Youtube

Larz Conwell
Author by

Larz Conwell

Updated on September 18, 2022

Comments

  • Larz Conwell
    Larz Conwell over 1 year

    So I'm working on a project and I wanted to use some C11 features for C. To use those features GCC 4.7 is required, so I went to synaptic and looked up 4.7, and I found the packages gcc-4.7-base so I installed it[1].

    So now that gcc-4.7-base is installed I expected to be able to use 4.7, but no, when I do gcc --version it still shows 4.6.3 even more, when I try to directly call 4.7(via /usr/bin/gcc-4.7) it doesn't exist, though a gcc-4.6 executable does exist.

    How do I "activate" GCC 4.7? I read here, you do some crazy stuff with update-alternatives, but it doesn't work for me as the gcc-4.7 executable doesn't actually exist on my machine.

    Notes: 1. I also saw gcc-4.6-base, so I figured I'd uninstall it, but synaptic attempted to remove every package I had installed and install a Java runtime, so for obvious reason I decided not to remove it.

  • user2390005
    user2390005 about 8 years
    I don't think this answers the question, since the OP specifically said the update-alternatives route wouldn't work for them as they didn't have the gcc-4.7 binary available. Indeed, trying to follow the instructions in this answer after installing gcc-4.7-base results in the error: update-alternatives: error: alternative path /usr/bin/gcc-4.7 doesn't exist.