Hallo, Ich würde gerne bestehenden Code in meine Keil MDK-ARM toolchain übernehmen. Der Code wurde zuvor mit GCC bzw. einer darauf aufbauenden Toolchain entwickelt und nutzt zahlreiche C++11 features wie tuple oder unordered_set. Die im MDK-ARM mitgelieferte Standard Lib unterstützt leider kein C++11. (Compiler aber angeblich großteils schon) Gibt es eine andere (freie) c++ standard lib (kompatibel zu C++11) die man für CortexM3-Entwicklung verwenden könnte? Hat jemand sowas schon erfolgreich in Verbindung mit der MDK-ARM toolchain getestet?
Alex_uC schrieb: > Die im MDK-ARM mitgelieferte Standard Lib unterstützt leider kein C++11. Sicher dass das nicht der Compiler selbst ist, der das nicht unterstützt?! Alex_uC schrieb: > Gibt es eine andere (freie) c++ standard lib (kompatibel zu C++11) die > man für CortexM3-Entwicklung verwenden könnte? Du brauchst einen C++11 fähigen Compiler. Der liefert dann auch eine entsprechende Standard Library mit. Da gibt es momentan eigentlich nur den ARM GCC. Clang sollte das theoretisch auch können aber da gibt's wenig Ressourcen im Netz zu.
Erstmal vielen Dank für deine Antwort! Das die mitgelieferte Lib des MDK-ARM compilers kein C++11 unterstützt, entnehme ich den folgenden Link (ganz unten siehe Note): http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0472l/chr1407404265784.html Wenn ich die Libs aus der mittlerweile nicht mehr frei erhältlichen CodeSourcery Codebench Lite nehme, laufe ich von einen Problem in das nächste. Die Compiler Optionen --cpp11 --gnu von Keils armcc habe ich auch schon probiert. Hat das schon evtl. jemand erfolgreich kombiniert? Wichtig wäre mir vorallem ein funkionierendes Setup zum Step-by-step debuggen mittels ULINK debugger, nicht zwangsläufig der keil compiler...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.