Warum?
Abhängig von Ihrer Quelle ist es wahrscheinlich, dass der Intel-Compiler die schnellsten ausführbaren Dateien für die x86-Architektur generiert (Verbesserung der Ausführungszeit um 5 bis 100%).
Intel bietet seine Compiler für Linux unter einer nichtkommerziellen Lizenz kostenlos an (ich glaube, ich habe gelesen, dass sie irgendwo auf ihrer Seite kostenlos sind: Intel - Non-Commercial Software Development ). Es gibt auch eine kostenlose nichtkommerzielle Lizenz für Studenten, diese Lizenz gilt jedoch nicht, obwohl Tools für alle drei Hauptbetriebssysteme angeboten werden (Link aufgrund von Reputationsbeschränkungen nicht verfügbar).
Tor
Ich (als Nicht-Student) möchte die Intel-Compiler für mögliche Verbesserungen der Ausführungsgeschwindigkeit unter der nicht-kommerziellen Lizenz verwenden können, um Objektdateien zu kompilieren, die verknüpft werden können, um ausführbare Dateien und dynamische Verknüpfungsbibliotheken für Windows (und möglicherweise das Betriebssystem) zu erstellen X)
Mehr Details:
Aus diesem Dokument habe ich abgeleitet, dass die Intel-Compiler Objektdateien erstellen, die mit den dominierenden Compilern der Plattform kompatibel sind.
Unterfragen:
- Was sind die Objektdateiformate von gcc, g ++, cl, mingw32, icc, icpc und icl unter Windows und Linux (aktuelle Versionen)?
- Können Teile der Cross-Compiler-Toolchain von mingw32 verwendet werden, um das Ziel zu erreichen?
- Habe ich recht, dass die Metadaten in den generierten Objektdateien das Hauptproblem sind?
Zu 2:
mingw32-objcopy scheint in der Lage zu sein, die Intel-Compiler-Ausgabe unter Linux (vermutlich ELF) in Microsoft-kompatibles COFF zu konvertieren (mit der möglichen Ausnahme von verschiebbaren Objektdateien). Könnte jemand bestätigen, dass dies tatsächlich funktioniert (für nicht-triviale Anwendungen), bitte?