Wir haben eine Mathematik-/Wissenschaftsanwendung zur Proteinvisualisierung, die in C++ mit OpenGL geschrieben ist. Sie wurde in den letzten Jahren entwickelt und macht umfangreichen Gebrauch von den Funktionen von C++0x, die in GCC 4.4 und späteren Versionen zu finden sind. (Sie lässt sich auch mit Microsoft Visual C++ 10 unter Windows kompilieren, das viele C++0x-Funktionen unterstützt.)
Wir möchten eine iPhone/iPad-Version veröffentlichen, daher müssen wir sie von Linux/Windows auf das iPhone portieren. Wir haben ähnliche Programme mit sehr wenig Aufwand portiert - ein paar Objective C-Dateien hinzugefügt und fertig! - jedoch haben wir hier aufgrund der verwendeten C++0x-Funktionen ein Problem. Xcode unter OS X verwendet GCC 4.2.1 (von 2007), das die C++0x-Unterstützung von GCC vorwegnimmt. Es scheint ein großer Rückschritt zu sein, all diesen schönen C++ 0x-Code neu zu schreiben, um keine C++0x-Funktionen zu verwenden, und wir möchten wirklich keine zurückportierte Codebasis pflegen, wenn der Weg zu C++0x klar ist.
Gibt es einen Weg, GCC 4.5 (oder 4.6, aus dem SVN) zu verwenden, um das iPhone und den iPhone-Simulator als Ziel zu setzen? Wenn ja, wie? Vorzugsweise innerhalb von Xcode, da die Klick-und-Ausführen/Klick-und-Debuggen-Funktion sehr nützlich ist. Es wäre großartig, einfach "GCC 4.6" in das Feld "C/C++-Compiler-Version" in Xcode eingeben zu können und alles würde funktionieren.
(Übrigens unterstützt die aktuellste Version von Clang - Stand gestern! - einige C++0x-Funktionen, unterstützt jedoch noch keine Lambda-Ausdrücke, sodass sie für uns vorerst wahrscheinlich nicht infrage kommt.)