- std=c ++ 11 не распознанный на gcc 4.8.1

Я просто следовал ответу на этот вопрос обновить мою gcc версию к 4,8. 1 на Ubuntu 12.04, которая я думал, будет поддерживать C++ 11. Однако это не кажется.

Когда я пытаюсь скомпилировать что-то с -std=c++11 флаг, я получаю эту ошибку:

cc1plus: error: unrecognized command line option ‘-std=c++11’

Моя gcc версия - это:

gcc version 4.8.1 (Ubuntu 4.8.1-2ubuntu1~12.04)

Мой g ++ версия является этим:

$ g++ -v
  ....
gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)

Что я мог пропускать?

Править: Я пропускал это, я должен был обновить g ++

Это легко достигается с маленькой модификацией к коду, предоставленному в вышеупомянутом ответе. Просто изменение gcc кому: g++.

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install g++-4.8
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 50
5
задан 13 April 2017 в 05:23

1 ответ

Вы обновили компилятор C, но не компилятор C++. Они - отдельные двоичные пакеты. Необходимо также установить g++-4.8 пакет для получения новой версии компилятора C++.

5
ответ дан 23 November 2019 в 09:24

Другие вопросы по тегам:

Похожие вопросы: