2011-05-02 10 views
21

特に私はchainDDのsuバイナリをコンパイルしようとしています。 ndk-buildを使用しようとしましたが、NDK_PROJECT_PATHを設定する必要があるようですが、これを設定する必要があるのはドキュメントに記載されていません。あなたはこのようなあなたのプロジェクトフォルダを確立する必要があるAndroid.mkを使用して簡単なネイティブコードをコンパイルするにはどうすればよいですか?

+0

通常、プロジェクト内でndk-buildを実行します。これを行うと正常に動作しますか? –

+0

NDK_PROJECT_PATHについてndk-buildを実行しました。 – user492922

+0

NDKのどのバージョンを使用していますか? –

答えて

4

PROJECT_ROOT

| _ _ jni /(Android.mkとC/C++コードを含む)

| _ _ other_directory

jniディレクトリは名前を変更できません。 を実行し、project_rootディレクトリでndk-buildを実行します。

+0

これにいくつかの書式を追加することを意味しましたか?あなたのフォルダ構造はあまり明確ではありません。 – Dutts

+0

私は自分の答えを更新します、これは十分ですか? – onlyxool

+0

はい、はるかに良い – Dutts

5

まず、あなたは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:

/ユーザ/ <user> /アンドロイド - 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 

お手数ですが教えてください。

よろしく、

+0

'$ NDK/build/tools/make-standalone-toolchain.sh --platform = android-3 --install-dir =/tmp/my-android-toolchain'で' archを自動設定できませんツールチェイン '、accoding – Glowin

+0

' $ NDK/build/tools/make-standalone-toolchain.sh --platform = android-3 --install-dir =/tmp/my-android-toolchain'は '自動化できませんツールチェインから-config archを作成し、この答えに従ってください。http://stackoverflow.com/questions/29444079/unable-to-auto-config-arch-from-toolchain、 '--toolchain = arm-linux-androideabi- 4.8' https://gist.github.com/Tydus/11109634 – Glowin

関連する問題