Как установить заголовочные файлы C ++ 11 C ++ 0x на Redhat Enterprise - PullRequest
4 голосов
/ 21 марта 2012

Я переместил свое приложение в другую коробку Linux, после компиляции он возвращает ошибку о том, что

#include <atomic> 

не может быть решена.

Я думаю, новый заголовок GNU C ++ 11файлы / библиотеки не установлены на новом компьютере.

Мой вопрос: как я могу их установить?

Я работаю на Redhat Enterprise, так что yum install?

Спасибо.

Ответы [ 3 ]

8 голосов
/ 21 августа 2012

Red Hat Developer Toolset обеспечивает поддержку C ++ 11.

(Действительно, я подозреваю, что это основная причина его существования.)

1 голос
/ 14 мая 2013

Включение в версию gcc, которая поставляется с RHEL 6:

#include <cstdatomic>

См. Раздел «Библиотека времени выполнения» (libstdc ++) gcc 4.4, примечания к выпуску .

РЕДАКТИРОВАТЬ: Этот ответ не совсем правильный, потому что cstdatomic это файл C11, а не C ++ 11. Для полной поддержки C ++ в RHEL 6 следует использовать devtoolset .

0 голосов
/ 21 марта 2012

Похоже, вам нужно самостоятельно установить актуальную версию GCC;RHEL (по крайней мере, начиная с 6.x) не имеет версии GCC, поддерживающей C ++ 0x, в своих репозиториях.Вы можете собрать последние версии GCC, следуя инструкциям по установке GCC , которые не зависят от распространения.

Вы также можете использовать пакет из более новой Fedora * 1006.* релиз, который обычно содержит больше «передового» программного обеспечения, чем доступно в RHEL.

...