Как мне скомпилировать простой нативный код с помощью Android.mk? - PullRequest
24 голосов
/ 02 мая 2011

В частности, я пытаюсь скомпилировать su бинарного файла chainDD.Я пытался использовать ndk-build, но, похоже, мне нужно установить NDK_PROJECT_PATH, но то, что нужно установить, не описано в документации.

Ответы [ 2 ]

7 голосов
/ 28 мая 2013

Во-первых, убедитесь, что у вас есть NDK:

http://developer.android.com/tools/sdk/ndk/index.html

Вот самый простой способ собрать двоичный файл C для вашего телефона:

http://developer.android.com/tools/sdk/ndk/index.html

http://www.kandroid.org/ndk/docs/STANDALONE-TOOLCHAIN.html

Обычно $ NDK (может отличаться) =

Linux:

/ home / <user>/ android-ndk

Mac OS X:

/ Users / <user> / android-ndk

Оба: $ HOME / android-ndk

В терминале:

# create tool-chain - one line
$NDK/build/tools/make-standalone-toolchain.sh --platform=android-3 --install-dir=/tmp/my-android-toolchain

# add to terminal PATH variable
export PATH=/tmp/my-android-toolchain/bin:$PATH

# make alias CC be the new gcc binary
export CC=arm-linux-androideabi-gcc

# compile your C code(I tried hello world)
$CC -o foo.o -c foo.c

# push binary to phone
adb push foo.o /data/local/tmp

# execute binary
adb /data/local/tmp/foo.o

Пожалуйста, дайте мне знать, если я могу помочь!

С уважением,

4 голосов
/ 12 марта 2013

Вам нужно установить папку проекта следующим образом:

project_root

| _ _ jni / (включая Android.mk и ваш код C / C ++)

| _ _ other_directory

Каталог jni не может изменить имя. и запустите ndk-build в каталоге project_root.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...