5

コンピューターに arm-linux-androideabi-gcc がインストールされていますが、単純なハローワールドでもコンパイルしようとすると、エラーが発生します ( ndk-build を使用しないことを選択しています)。コマンドラインからコンパイルしたいだけ...

#include <iostream>

using namespace std;

int main (){
    return 0;
}

そして、私はこのエラーを受け取りました:

エラー: iostream: そのようなファイルまたはディレクトリはありません

に arm-linux-androideabi-gcc があり~/android-ndk-r8b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/binます。

含めてみました-I ~/android-ndk-r7b/platforms/android-9/arch-arm/usr

私は-lstdc++それが機能するかどうかを確認するためだけに含めようとしましたが、そうではありません...

./arm-linux-androideabi-g++ -o ff first.cpp -I /home/hari/android-ndk-r7b/platforms/android-9/arch-arm/usr -lstdc++
4

3 に答える 3

7

まず、スタンドアロン ツールチェーンを作成する必要があります。

make-standalone-toolchain.sh --platform=android-14 --install-dir=standalone-toolchain --ndk-dir=$ANDROID_NDK_PATH

PATH をエクスポートします。

export PATH=$TOOLCH/standalone-toolchain/bin:$PATH

次に、ファイルをビルドします。

arm-linux-androideabi-g++ -o test-new test.cpp

注: NDK の最新バージョンであるリビジョン 8b を使用した問題: http://code.google.com/p/android/issues/detail?id=35279

arm-linux-androideabi-g++ -o test-new test.cpp --sysroot=$TOOLCH/sysroot
-I$TOOLCH/lib/gcc/arm-linux-androideabi/4.6.x-google/include
-I$TOOLCH/lib/gcc/arm-linux-androideabi/4.6.x-google/include-fixed
-I$TOOLCH/arm-linux-androideabi/include/c++/4.6
-I$TOOLCH/arm-linux-androideabi/include/c++/4.6/arm-linux-androideabi
-I$TOOLCH/sysroot/usr/include
于 2012-07-31T19:56:49.963 に答える
1

エラーを見てください: iostream: No such file or directory

#include "iostream"#includeである必要があります#include <iostream>

于 2012-07-31T19:43:26.920 に答える
0

http://code.google.com/p/android/issues/detail?id=35279によると、これはスタンドアロンツールチェーンのバグです。最善の解決策は ln -s $TOOLCH/arm-linux-androideabi/include/c++/4.6 $TOOLCH/arm-linux-androideabi/include/c++/4.6.x-google

于 2012-11-08T07:47:51.490 に答える