Comment cross-comstackr clang / llvm pour iOS?

Comment cross-comstackr clang / llvm pour iOS? Je dois get libclang (.a ou .dylib je crois) pour l'utiliser via l'API C dans mon application iOS.

 # Get LLVM/Clang mkdir llvm curl -O http://llvm.org/releases/3.4/llvm-3.4.src.tar.gz tar xzfv llvm-3.4.src.tar.gz cd llvm-3.4/tools/ curl -O http://llvm.org/releases/3.4/clang-3.4.src.tar.gz tar xzfv clang-3.4.src.tar.gz mv clang-3.4 clang cd .. # Assuming Xcode 5.1 (LLVM 3.5+ requires -stdlib=libc++ as well) export CC="clang -arch armv7 -mios-version-min=5.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk" export CXX="clang++ -arch armv7 -mios-version-min=5.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk" mkdir build cd build ../configure \ --prefix=/Users/thomas/tmp/llvm-ios \ --host=arm-apple-darwin11 \ --enable-optimized \ --disable-assertions unset CC CXX # important! (Otherwise the next step will fail) make VERBOSE=1 -j... 

Après un moment, vous obtiendrez:

 /Users/thomas/tmp/llvm-3.4/lib/Support/Unix/Program.inc:46:10: fatal error: 'crt_externs.h' file not found #include <crt_externs.h> // _NSGetEnviron ^ 

Commentez le file d'en-tête et _NSGetEnviron() l'appel à _NSGetEnviron() out (vous l'obtiendrez trois fois)

 make install 

iOSToolChain dans le https://coolstar.org/publicrepo/ dans Cydia.

Clang et LLVM sur iOS.

Je l'ai utilisé sur un appareil jailbreaké pour comstackr des applications C pour iOS (ARM 32 bits ou ARM 64 bits).

Il y a un bon article de reference ici: Comstackr le programme IOS depuis la command line linux