Derzeit interessiere ich mich für ARM im Allgemeinen und speziell für iPhone / Android-Ziele. Aber ich möchte nur mehr über Clang erfahren, da es in den kommenden Jahren eine wichtige Rolle zu spielen scheint.
Ich habe es versucht
clang -cc1 --help|grep -i list
clang -cc1 --help|grep arch|grep -v search
clang -cc1 --help|grep target
-triple <value> Specify target triple (e.g. i686-apple-darwin9)
Ich weiß, dass clang den Parameter -triplet hat, aber wie kann ich alle möglichen Werte dafür auflisten? Ich fand, dass clang in Bezug auf Cross-Compilierung sehr unterschiedlich zu gcc ist. In der GCC-Welt sollten Sie für alles eine separate Binärdatei haben, wie PLATFORM_make oder PLATFORM_ld (i * 86-pc-cygwin i * 86 - * - linux-gnu usw. http : //git.savannah.gnu.org/cgit/libtool.git/tree/doc/PLATFORMS )
In der Clang-Welt ist es nur eine Binärdatei (wie ich in einigen Foren gelesen habe). Aber wie erhalte ich die Liste der unterstützten Ziele? Und wenn mein Ziel in meiner Distribution nicht unterstützt wird (Linux / Windows / Macos / was auch immer), wie kann ich das bekommen, das mehr Plattform unterstützt?
wenn ich SVN neuesten Klirren so:
svn co http://llvm.org/svn/llvm-project/cfe/trunk clang
bekomme ich die meisten Plattformen? Es sieht so aus, als ob Clang nicht sofort für Cross-Compilierung entwickelt wurde, aber da es auf llvm basiert, sollte es theoretisch sehr cross-freundlich sein? Danke!