cc1plus: ошибка: нераспознанный параметр командной строки "- std=c++11 " с g++
Я пытаюсь скомпилировать с помощью g++ и -std=c++11 или c++0x флаги.
однако, я получаю эту ошибку
cc1plus: error: unrecognized command line option "-std=c++11"
g++ --version
g++ (GCC) 4.1.2 20080704 (Red Hat 4.1.2-54)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
4 ответов:
видя из вашей версии G++, вам нужно обновить его плохо. C++11 был доступен только с G++ 4.3. Самая последняя версия-4.7.
в версиях pre-G++ 4.7, вам придется использовать
-std=c++0x, для более поздних версий, которые вы можете использовать-std=c++11.
слово сайт gcc:
функции C++11 доступны как часть компилятора GCC "mainline" в магистрали репозитория Subversion GCC и в GCC 4.3 и более поздних версиях. Чтобы включить поддержку C++0x, добавьте параметр командной строки-std=c++0x в командную строку g++. Или, чтобы включить расширения GNU в дополнение к расширениям C++0x, добавьте -std=gnu++0x в командную строку g++. Поддержка GCC 4.7 и более поздних версий-std=c++11 и-std=gnu++11 as что ж.
Так что, вероятно, вы используете версию g++ , которая не поддерживает
-std=c++11. Попробуй-std=c++0xвместо.доступность функций C++11 доступна только для версий >= 4.3.
Comments