Actuellement, je m'intéresse à ARM en général et plus particulièrement aux cibles iphone / android. Mais je veux juste en savoir plus sur clang, car il semble jouer un rôle important dans les années à venir.
j'ai essayé
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)
Je sais que clang a le paramètre -triplet, mais comment puis-je lister toutes les valeurs possibles? J'ai trouvé que clang est très différent de gcc en ce qui concerne la compilation croisée, dans le monde GCC, vous devriez avoir un binaire séparé pour tout, comme PLATFORM_make ou PLATFORM_ld (i * 86-pc-cygwin i * 86 - * - linux-gnu etc. http : //git.savannah.gnu.org/cgit/libtool.git/tree/doc/PLATFORMS )
dans le monde clang, ce n'est qu'un seul binaire (comme je l'ai lu sur certains forums). Mais comment obtenir la liste des cibles prises en charge? Et si ma cible n'est pas prise en charge sur ma distribution (linux / windows / macos / peu importe), comment puis-je obtenir celle qui prend en charge plus de plate-forme?
si je SVN dernier clang comme ceci:
svn co http://llvm.org/svn/llvm-project/cfe/trunk clang
vais-je obtenir la plupart des plates-formes? Il semble que Clang n'a pas été construit avec la compilation croisée à l'esprit tout de suite, mais comme il est basé sur llvm, il devrait être très convivial en théorie? Merci!