为什么 arm-linux-androideabi-gcc 会给出 iostream 错误

问题描述:

我的计算机上安装了 arm-linux-androideabi-gcc,但是当我尝试编译即使是一个简单的地狱世界时,它也会出错(我选择不使用 ndk-build ).我只想从命令行编译...

I have arm-linux-androideabi-gcc installed in my computer, but when I try to compiler even a simple hellow world, it gives error ( I am choosing not to use ndk-build ) . I just want to compile from the command line ...

#include <iostream>

using namespace std;

int main (){
    return 0;
}

我收到了这个错误:

错误:iostream:没有那个文件或目录

error: iostream: No such file or directory

我在 ~/android-ndk-r8b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin 中有 arm-linux-androideabi-gcc.

I have the arm-linux-androideabi-gcc in ~/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++ 只是为了看看它是否有效但没有......

I have also tried including -lstdc++ just to see if it works but no ...

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

首先您需要创建独立的工具链:

First you need to create the standalone toolchain:

make-standalone-toolchain.sh --platform=android-14 --install-dir=standalone-toolchain --ndk-dir=$ANDROID_NDK_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

Note: issue using revision 8b which is the latest version of the NDK: 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