|
@@ -394,52 +394,31 @@ make CROSS=mips-linux- TARGET_CFLAGS="-mips64r2 -mabi=64"
|
|
make CROSS=mipsel-linux- TARGET_CFLAGS="-mips64r2 -mabi=64"
|
|
make CROSS=mipsel-linux- TARGET_CFLAGS="-mips64r2 -mabi=64"
|
|
</pre>
|
|
</pre>
|
|
<p>
|
|
<p>
|
|
-You can cross-compile for <b id="android">Android</b> using the <a href="https://developer.android.com/ndk/index.html">Android NDK</a>.
|
|
|
|
-The environment variables need to match the install locations and the
|
|
|
|
-desired target platform. E.g. Android 4.0 corresponds to ABI level 14.
|
|
|
|
-For details check the folder <tt>docs</tt> in the NDK directory.
|
|
|
|
-</p>
|
|
|
|
-<p>
|
|
|
|
-Only a few common variations for the different CPUs, ABIs and platforms
|
|
|
|
-are listed. Please use your own judgement for which combination you want
|
|
|
|
-to build/deploy or which lowest common denominator you want to pick:
|
|
|
|
|
|
+You can cross-compile for <b id="android">Android</b> using the <a href="http://developer.android.com/ndk/"><span class="ext">»</span> Android NDK</a>.
|
|
|
|
+Please adapt the environment variables to match the install locations and the
|
|
|
|
+desired target platform. E.g. Android 4.1 corresponds to ABI level 16.
|
|
</p>
|
|
</p>
|
|
<pre class="code">
|
|
<pre class="code">
|
|
-# Android/ARM, armeabi (ARMv5TE soft-float), Android 2.2+ (Froyo)
|
|
|
|
-NDK=/opt/android/ndk
|
|
|
|
-NDKABI=8
|
|
|
|
-NDKVER=$NDK/toolchains/arm-linux-androideabi-4.9
|
|
|
|
-NDKP=$NDKVER/prebuilt/linux-x86/bin/arm-linux-androideabi-
|
|
|
|
-NDKF="--sysroot $NDK/platforms/android-$NDKABI/arch-arm"
|
|
|
|
-make HOST_CC="gcc -m32" CROSS=$NDKP TARGET_FLAGS="$NDKF"
|
|
|
|
-
|
|
|
|
-# Android/ARM, armeabi-v7a (ARMv7 VFP), Android 4.0+ (ICS)
|
|
|
|
-NDK=/opt/android/ndk
|
|
|
|
-NDKABI=14
|
|
|
|
-NDKVER=$NDK/toolchains/arm-linux-androideabi-4.9
|
|
|
|
-NDKP=$NDKVER/prebuilt/linux-x86/bin/arm-linux-androideabi-
|
|
|
|
-NDKF="--sysroot $NDK/platforms/android-$NDKABI/arch-arm"
|
|
|
|
-NDKARCH="-march=armv7-a -mfloat-abi=softfp -Wl,--fix-cortex-a8"
|
|
|
|
-make HOST_CC="gcc -m32" CROSS=$NDKP TARGET_FLAGS="$NDKF $NDKARCH"
|
|
|
|
-
|
|
|
|
-# Android/MIPS, mipsel (MIPS32R1 hard-float), Android 4.0+ (ICS)
|
|
|
|
-NDK=/opt/android/ndk
|
|
|
|
-NDKABI=14
|
|
|
|
-NDKVER=$NDK/toolchains/mipsel-linux-android-4.9
|
|
|
|
-NDKP=$NDKVER/prebuilt/linux-x86/bin/mipsel-linux-android-
|
|
|
|
-NDKF="--sysroot $NDK/platforms/android-$NDKABI/arch-mips"
|
|
|
|
-make HOST_CC="gcc -m32" CROSS=$NDKP TARGET_FLAGS="$NDKF"
|
|
|
|
|
|
+# Android/ARM64, aarch64, Android 5.0+ (L)
|
|
|
|
+NDKDIR=/opt/android/ndk
|
|
|
|
+NDKBIN=$NDKDIR/toolchains/llvm/prebuilt/linux-x86_64/bin
|
|
|
|
+NDKCROSS=$NDKBIN/aarch64-linux-android-
|
|
|
|
+NDKCC=$NDKBIN/aarch64-linux-android21-clang
|
|
|
|
+make CROSS=$NDKCROSS \
|
|
|
|
+ STATIC_CC=$NDKCC DYNAMIC_CC="$NDKCC -fPIC" \
|
|
|
|
+ TARGET_LD=$NDKCC
|
|
|
|
|
|
-# Android/x86, x86 (i686 SSE3), Android 4.0+ (ICS)
|
|
|
|
-NDK=/opt/android/ndk
|
|
|
|
-NDKABI=14
|
|
|
|
-NDKVER=$NDK/toolchains/x86-4.9
|
|
|
|
-NDKP=$NDKVER/prebuilt/linux-x86/bin/i686-linux-android-
|
|
|
|
-NDKF="--sysroot $NDK/platforms/android-$NDKABI/arch-x86"
|
|
|
|
-make HOST_CC="gcc -m32" CROSS=$NDKP TARGET_FLAGS="$NDKF"
|
|
|
|
|
|
+# Android/ARM, armeabi-v7a (ARMv7 VFP), Android 4.1+ (JB)
|
|
|
|
+NDKDIR=/opt/android/ndk
|
|
|
|
+NDKBIN=$NDKDIR/toolchains/llvm/prebuilt/linux-x86_64/bin
|
|
|
|
+NDKCROSS=$NDKBIN/arm-linux-androideabi-
|
|
|
|
+NDKCC=$NDKBIN/armv7a-linux-androideabi16-clang
|
|
|
|
+make HOST_CC="gcc -m32" CROSS=$NDKCROSS \
|
|
|
|
+ STATIC_CC=$NDKCC DYNAMIC_CC="$NDKCC -fPIC" \
|
|
|
|
+ TARGET_LD=$NDKCC
|
|
</pre>
|
|
</pre>
|
|
<p>
|
|
<p>
|
|
-You can cross-compile for <b id="ios">iOS 3.0+</b> (iPhone/iPad) using the <a href="http://developer.apple.com/devcenter/ios/index.action"><span class="ext">»</span> iOS SDK</a>:
|
|
|
|
|
|
+You can cross-compile for <b id="ios">iOS 3.0+</b> (iPhone/iPad) using the <a href="http://developer.apple.com/ios/"><span class="ext">»</span> iOS SDK</a>:
|
|
</p>
|
|
</p>
|
|
<p style="font-size: 8pt;">
|
|
<p style="font-size: 8pt;">
|
|
Note: <b>the JIT compiler is disabled for iOS</b>, because regular iOS Apps
|
|
Note: <b>the JIT compiler is disabled for iOS</b>, because regular iOS Apps
|
|
@@ -449,13 +428,6 @@ much slower than the JIT compiler. Please complain to Apple, not me.
|
|
Or use Android. :-p
|
|
Or use Android. :-p
|
|
</p>
|
|
</p>
|
|
<pre class="code">
|
|
<pre class="code">
|
|
-# iOS/ARM (32 bit)
|
|
|
|
-ISDKP=$(xcrun --sdk iphoneos --show-sdk-path)
|
|
|
|
-ICC=$(xcrun --sdk iphoneos --find clang)
|
|
|
|
-ISDKF="-arch armv7 -isysroot $ISDKP"
|
|
|
|
-make DEFAULT_CC=clang HOST_CC="clang -m32 -arch i386" \
|
|
|
|
- CROSS="$(dirname $ICC)/" TARGET_FLAGS="$ISDKF" TARGET_SYS=iOS
|
|
|
|
-
|
|
|
|
# iOS/ARM64
|
|
# iOS/ARM64
|
|
ISDKP=$(xcrun --sdk iphoneos --show-sdk-path)
|
|
ISDKP=$(xcrun --sdk iphoneos --show-sdk-path)
|
|
ICC=$(xcrun --sdk iphoneos --find clang)
|
|
ICC=$(xcrun --sdk iphoneos --find clang)
|