В частности, я пытаюсь скомпилировать chainDD su. Я попытался использовать ndk-build
, но мне кажется, мне нужно установить NDK_PROJECT_PATH
, но то, что должно быть установлено, не описано в документации.
Как скомпилировать простой собственный код с помощью Android.mk?
Ответ 1
Сначала убедитесь, что у вас есть 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:
/главная/<user>
/андроид-NDK
Mac OS X:
/Users/<user>
/андроид-NDK
И $ HOME/андроид-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
Пожалуйста, дайте мне знать, если я могу помочь!
Привет,
Ответ 2
Вам нужно установить папку проекта следующим образом:
project_root
| __ jni/(включая Android.mk и ваш код на C/С++)
| __ other_directory
Каталог jni не может изменить имя. и запустите ndk-build в каталоге project_root.