En cuanto a la pregunta, las ediciones y los comentarios, es evidente que la configuración de la cadena del compilador y los encabezados es probablemente la causa. Puedes seguir intentando agregar cosas, pero yo tomaría una táctica diferente:
- Realice una copia de seguridad completa de la Mac, una que debe tomar en serio si borra la máquina y ejecuta una compilación de prueba del programa y luego restaura la copia de seguridad completa o los archivos que necesita de forma selectiva desde la copia de seguridad. >
- Elimine Xcode y elimine todos los compiladores que haya descargado e instalado.
- Instale una herramienta para ayudar con el mantenimiento e instalación del compilador y los archivos de biblioteca de encabezado necesarios para el último estándar de c ++.
La herramienta que utilizo es homebrew, por lo que puede instalarla según enlace
-
brew update
-
brew doctor
- y asegúrese de seguir cualquiera de los consejos del médico o publicar aquí para obtener consejos
-
brew install gcc
Aquí está el programa de prueba que usé para un "caso de prueba mínimo"
#include<atomic>
#include<iostream>
using namespace std;
int main()
{
cout << "Hello World" << endl;
}
Antes de usar la versión "brew" de gcc, obtengo lo que supongo que es el mismo error que tú:
mac:Desktop me$ /usr/bin/gcc gate\ test.cpp
In file included from gate test.cpp:1:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/atomic:543:2: error: <atomic> is not implemented
#error <atomic> is not implemented
^
1 error generated.
mac:Desktop me$ which gcc
/usr/bin/gcc
Pero si lo compilo usando el "brew instalado gcc", recibo un mensaje detallado muy bueno
mac:Desktop me$ g++-5 gate\ test.cpp
In file included from /usr/local/Cellar/gcc/5.2.0/include/c++/5.2.0/atomic:38:0,
from gate test.cpp:1:
/usr/local/Cellar/gcc/5.2.0/include/c++/5.2.0/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
#error This file requires compiler and library support for the \
^
mac:Desktop me$ g++-5 gate\ test.cpp -std=c++11
TLDR;
- apuntando su compilador a g ++ 5
- elimine otros compiladores según sea necesario (incluido Xcode posiblemente)
- agregar la opción de compilación -std = c ++ 11