Ist es möglich, Clang für Cross-Compiling für den ARM-Prozessor einzurichten? Der Host wird wahrscheinlich auf x86 (AMD64 - wahrscheinlich Ubuntu 12.04) sein und das Ziel wäre ARM (Raspberry Pi sowie Pandaboard - wird für jeden eine separate Kompilierung durchführen), ich möchte irgendwann auch die PowerPC-Architektur kompilieren ? Die Programmquelle ist in C.Clang Cross Kompilieren für ARM?
Antwort
Um Quer kompilieren für Raspberry Pi Lauf Soft-float Linux-Distributionen Flaggen hinzufügen -ccc-host-triple arm-eabi -marm -mfpu=vfp -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfloat-abi=softfp
Um Quer kompilieren für Raspberry Pi laufen hart float Linux-Distributionen verwenden die Fahnen -ccc-host-triple arm-eabi -marm -mfpu=vfp -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfloat-abi=hard
Um Quer kompilieren für Pandaboard Verwendung Flaggen -ccc-host-triple arm-eabiv7 -mthumb -mfpu=neon-fp16 -mcpu=cortex-a9 -mtune=cortex-a9 -mfloat-abi=hard
(unter der Annahme, dass Ihr Pandaboard Ubuntu läuft)
Hinweis: neuere Version clang
Verwendung -target
Option statt -ccc-host-triple
Große Antwort! Danke für die sehr spezifischen Flaggen. – CyberFonic
Siehe EmbToolkit Projekt. Es gibt die Möglichkeit, clang/llvm oder gcc-basierte Cross-Compiler-Toolchain zu generieren.
Vielleicht hilft das [Ist Cross-Compiling für ARM auf x86 mit llvm/Clang möglich?] (Http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-June/050820.html) –
http: //github.com/dwelch67/raspberrypi Ich habe Beispiele, die clang in diesem Repo und anderen verwenden. 3.2 ermöglicht das Kompilieren direkt zum Objekt anstatt einen Schritt durch die Montage zu machen. –
http://stackoverflow.com/questions/5878292/iphone-why-can-the-compiler-not-find-some-includes-when-building-for-armi-archi/17537169#17537169 – MoDJ