Beim Erstellen eines neuen C ++ - Projekts in Eclipse werde ich nach der Toolchain gefragt.
Was ist der praktische Unterschied zwischen diesen Werkzeugketten - Cross GCC
und Linux GCC
. Unter welchen Umständen verwenden Sie sie? Hat es etwas damit zu tun, ob das Projekt sowohl auf Linux- als auch auf Windows-Computern kompiliert wird?
In einer der Antworten können wir lesen:
Im Allgemeinen ist ein Cross-Compiler ein Compiler, der Code für eine andere Art von System erzeugt als für Ihr System.
Wenn ich also ein Projekt auf einem Zielcomputer mit eigenen Makefiles kompiliere, spielt es keine Rolle, welche Option ich hier wähle, oder?
Antworten:
Der Cross Compiler Artikel auf Wikipedia ist ziemlich gut. Im Allgemeinen ist ein Cross-Compiler ein Compiler, der Code für eine andere Art von System erzeugt als für Ihr System. Dies bedeutet normalerweise eine andere Zielhardwarearchitektur, kann aber auch ein anderes Zielbetriebssystem (oder beides) bedeuten.
Theoretisch könnten Sie diese kombinieren und einen Cross-Compiler auf Architektur A 1 und Betriebssystem S 1 verwenden , um einen Cross-Compiler zu erstellen, der auf Architektur A 2 unter Betriebssystem S 2 ausgeführt wird und Code für Betriebssystem S 3 auf Architektur A 3 erzeugt .
Wie Ulrich in seinem Kommentar erwähnt, sollte Linux GCC Ihr "nativer" Compiler sein (dh für dasselbe Ziel).
quelle