hello2.cpp:
#include <iostream>
#include <mutex>
int main()
{
std::mutex wait;
wait.lock();
std::cout << "Hello Welt\n";
return 0;
}
Die falsche C++ Library scheint der Default zu sein. Als erste würde ich folgendes versuchen:
Wenn es nicht geht, würde ich noch als Zusatzparmeter versuchen:-nostdinc++ -I#{opt_lib}/llvm-3.6/include/c++/v1 -L#{opt_lib}/llvm-3.6/lib
#{opt_lib} gehört durch in Installationpfad ersetzt, was /usr/local/Cellar/llvm36/3.6.2/lib entsprechen sollte. Bei der Installation vom llvm36 sollte der Pfad auch in den Meldungen am Abschluss angezeigt worden sein.
Damit sollen die richtigen Aufrufparameter für den Compiler feststehen.
Um zu testen, ob die C++ Libraries bei wxWidgets keine Probleme gibt [eventuell auch mit den weiteren Zusatzparametern:
clang++ -o touchtest touchtest.cpp $(wx-config --libs --cxxflags) -std=c++11 -stdlib=libc++
./touchtest
Mittels "otool -L touchtest" sollte man prüfen, ob die libstdc++ [schlecht] und/oder die libc++ [wenn aus der llvm3.6 Installation, dann gut] verwendet werden.
Wenn die falschen c++ Libraries verwendet werden, wird es wahrscheinlich zu merkwürdigen Fehlern kommen, daher sollte das Testprogramm vorher nur mit der richten libc++ laufen.