为什么ARM-Linux的androideabi-GCC给iostream的错误(why does

2019-06-26 16:01发布

我已经安装在我的电脑ARM-Linux的androideabi-gcc的,但是当我尝试编译甚至一个简单的hellow世界,它给了错误(我选择不使用NDK建造)。 我只是想通过命令行编译...

#include <iostream>

using namespace std;

int main (){
    return 0;
}

我收到此错误:

错误:iostream的:没有这样的文件或目录

我在臂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++

Answer 1:

首先,你需要创建一个独立的工具链:

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

注意:使用发行版本8B这是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


Answer 2:

看看错误: iostream: No such file or directory

#include "iostream"应的#include #include <iostream>



Answer 3:

根据http://code.google.com/p/android/issues/detail?id=35279 ,这是独立的工具链的一个bug。 我认为最好的修复,周围是ln -s $TOOLCH/arm-linux-androideabi/include/c++/4.6 $TOOLCH/arm-linux-androideabi/include/c++/4.6.x-google



文章来源: why does arm-linux-androideabi-gcc give iostream error