Я установил gcc 4.6.3
Помогите мне решить эту проблему. Сначала я настроил GMP
и затем настроенный NTL
, но при создании HElib
Я получаю эту ошибку. когда я ввожу сделать команду это показывающий ошибку как:
cc1plus: error: unrecognized command line option -std=c++11
GCC 4.6.x предшествует поддержке C++, который так не предоставляют 11 стандартов -std=c++11
. Это anticpates C++ 11 экспериментально и обеспечивает -std=c++0x
включить ту экспериментальную поддержку. -std=c++11
сначала доступно в GCC 4.7.x. Если Вы не можете обновить до более свежего компилятора, затем изменяются -std=c++11
кому: -std=c++0x
.
Продолжение следует для комментариев OP
Возможно, Вы не читали INSTALL.TXT
файл HELib
пакет? Specfically:
Прежде, чем создать HElib, можно хотеть посмотреть на Make-файл и рассмотреть корректировку некоторых значений по умолчанию для CC и CFLAGS. Значения по умолчанию должны быть в порядке в большинстве систем, но Вы видите предложенные опции, которые документируются в Make-файл.
Следование этому совету, редактированию src/Makefile
, найдите:
CFLAGS = -g -O2 -std=c++11 -pthread -DFHE_THREADS -DFHE_DCRT_THREADS -DFHE_BOOT_THREADS
и изменение -std=c++11
кому: -std=c++0x
.
Знайте, что проект, как гарантируют, не создаст успешно с gcc 4.6.3 - очень старой версией компилятора - после этого изменения; но не внося это изменение gcc 4.6.3 не может использоваться ни с какой степенью C++ 11 поддержки вообще.
Вы не привели причины для использования такого старого компилятора.