wake-up-neo.com

Wie kann ich C ++ 17 auf einem Mac aktivieren?

Ich kann gcc unter Linux aktualisieren, um -std = c ++ 17 zu erhalten, aber ich kann das nicht auf Mac tun. Gibt es eine Clang-Version, auf die ich aktualisieren kann, oder eine andere Alternative, um C++ 17 auf meinem Mac zu installieren? Bitte helfen Sie. Vielen Dank.

22
TheBigMalaka

Auf meinem 10.11 El Capitan, Xcode 7.3.1, wurde clang aktualisiert auf:

Apple LLVM version 7.3.0 (clang-703.0.31)

das entspricht fast der Version 3.8 von llvm. clang++ Hat keine Option -std=c++17, Aber -std=c++1z, Was derzeit gut funktioniert, obwohl nur einige Funktionen von C++ 1z unterstützt werden.

Für gcc können Sie ein sehr neues installieren, indem Sie:

brew install gcc --HEAD

das wird gcc-6.1 jetzt installieren (2016.8). Dieser gcc unterstützt C++ 17 nur eingeschränkt und kann mit -std=c++17 Aktiviert werden.


ein Update:

Die entsprechende llvm-Version von Apples Clang ist in letzter Zeit nicht klar, sollte 3.9+ oder 4+ sein. Überprüfen Sie diese Wiki-Seite für weitere Informationen.

brew install gcc --HEAD Sollte immer für Mac/Homebrew funktionieren und Ihnen den neuesten Gnu-Gcc mit vielen experimentellen Funktionen bieten. Andererseits sollte normal brew install gcc Einen gcc installieren, der jetzt die meisten c ++ 17-Funktionen unterstützt.

Versuchen Sie für das Sprachstandardargument -std=c++17 Und -std=c++1z Für verschiedene Compiler, einer von ihnen sollte funktionieren.

20
halfelf

Sie können gcc von Quellen installieren (es ist überhaupt nicht komplex), wenn es einige Komplikationen mit den Repositorys gibt.

Installationsprozess für Mac OS X , und hier ist es für Linux . Ich hoffe es hilft.

2
vianney

Vielleicht solltest du das xcode Kommando Tool installieren mit:

xcode-select --install
0
Galley

Der v17-Standard wird jetzt standardmäßig mit Xcode 1 angeboten und bietet sowohl Standard- als auch Variantenvarianten.

über Build-Einstellungen:

CLANG_CXX_LANGUAGE_STANDARD: C++ 17/GNU ++ 17

CLI:

std = c ++ 17

std = gnu ++ 17

0
DBrown