GCC / Clang: Verfügbare ObjC-Laufzeiten

576
Ingwie Phoenix

Vor einiger Zeit entdeckte ich die ObjFW-Laufzeit für Objective-C, die ziemlich ordentlich ist und viele Dinge tut - und sehr klein ist. Aber in letzter Zeit habe ich gefragt, welche Laufzeiten für welche Ziele verfügbar sind - und wie kann man das am besten herausfinden? Ich möchte in meiner Konfiguration ein kleines Skript verwenden, um zu testen, ob ich ObjFW auf der aktuellen Plattform mit der aktuellen clang- oder gcc-Installation verwenden könnte.

Gibt es eine Möglichkeit, die verfügbaren Objective-C-Laufzeiten bei GCC oder Clang aufzulisten?

0

2 Antworten auf die Frage

1
user443940

Jede GCC-Version ab 4.0 und grundsätzlich jede Clang-Version unterstützt die ObjFW-Laufzeit mindestens teilweise. Das liegt daran, dass die ObjFW-Laufzeit die GNU-ABI verwendet, aber darüber hinaus noch mehr hinzufügt. Um das hinzugefügte Zusatz zu verwenden, benötigen Sie eine Clang-Version, die -fobjc-runtime = objfw akzeptiert. Eine mögliche Überprüfung finden Sie unter configure.ac in ObjFW.

Dies alles ist nur relevant, wenn Sie die Laufzeit ohne den Rest von ObjFW verwenden möchten. Wenn Sie auch den Rest verwenden möchten, verwenden Sie einfach objfw-config: Es wird das Richtige für oyu tun.

-1
Van der Deken

Dies ist keine vollständige Antwort auf Ihre Frage, aber in der Clang-Dokumentation werden verfügbare Laufzeiten aufgeführt: Macosx, Macosx-Fragile, IOS, Watchos, Gcc, Gnustep und Objfw.

Meiner Meinung nach sind gnustep, gcc und objfw für alle Ziele geeignet, andere nur für OS X, iOS und Watch OS (da dies ein OS-spezifisches Betriebssystem ist, aber dies ist nur mein Vorschlag)

"Dies ist keine vollständige Antwort auf Ihre Frage" - Unvollständige Antworten sollten als Kommentar und nicht als Antwort übermittelt werden. Sie sollten diese Antwort so bearbeiten, dass sie die Frage des Autors beantwortet. Die Frage scheint ohne zusätzliche Informationen des Autors zu beantworten (was unwahrscheinlich ist, dass sie 2014 eingereicht wird). Ramhound vor 7 Jahren 0
@Ramhound, ich glaube nicht - der Autor wollte etwas über andere Laufzeiten erfahren, die für die Option -fobj-runtime verfügbar sind, und wie sie von GCC oder Clang bezogen werden können. Ich habe nicht für den zweiten Teil geantwortet (dies ist ein Grund für die unvollständige Antwort), aber für den ersten Teil wurde geantwortet, und diese Informationen können für andere sehr nützlich sein. Van der Deken vor 7 Jahren 0
Ich habe zu meiner Abstimmung ein Feedback gegeben. Ich werde nicht wiederholen, was ich bereits gesagt habe. Bitte verwenden Sie Zurückhaltung, wenn Sie in Zukunft unvollständige Antworten einreichen. Ramhound vor 7 Jahren 0