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

导出路径:

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 回答