blob: 2b4eea47bd5ef5c84f6d86c9cf1d0ab4e221df33 [file] [log] [blame]
page.title=MIPS Support
@jd:body
<div id="qv-wrapper">
<div id="qv">
<h2>On this page</h2>
<ol>
<li><a href="#over">Overview</a></li>
<li><a href="#comp">Compatibility</a></li>
</ol>
</div>
</div>
<p>The NDK supports the {@code mips} ABI, which allows native code to run on Android-based devices
that have CPUs supporting the MIPS32 instruction set.</p>
<h2 id="over">Overview</h2>
<p>To generate MIPS machine code, include {@code mips} in your
<a href="{@docRoot}ndk/guides/application_mk.html">{@code Application.mk}</a> file's
{@code APP_ABI} definition. For example: </p>
<pre class="no-pretty-print">
APP_ABI := mips
</pre>
<p>For more information about defining the {@code APP_ABI} variable, see
<a href="{@docRoot}ndk/guides/application_mk.html">{@code Application.mk}</a>.</p>
<p>The build system places generated libraries into {@code $PROJECT/libs/mips/}, where
{@code $PROJECT} represents your project's root directory, and embeds them in your APK under
the {@code /lib/mips/} directory.</p>
<p>The Android package manager extracts these libraries when installing your APK on a compatible
MIPS-based device, placing them under your app's private data directory.</p>
<p>In the Google Play store, the server filters applications so that a consumer sees only the native
libraries that run on the CPU powering his or her device.</p>
<h2 id="comp">Compatibility</h2>
<p>MIPS support requires, at minimum, Android 2.3 (Android API level 9). If your project files
target an older API level, but include MIPS as a targeted platform, the NDK build script
automatically selects the right set of native platform headers/libraries for you.</p>