android - arm-linux-androideabi编译器使用方法

标签 android c++ linux gcc android-ndk

我想知道如何使用 arm-linux-androideabi 编译器。 该编译器在 android-ndk 工具上。

android-ndk工具上有ndk-build工具。要编译 ethercat 堆栈,我只需要 arm-linux-androideabi 编译器。

但是,我看到了这条消息。

root@ubuntu:/opt/android/android-ndk-r9c/jni# arm-linux-androideabi-gcc -o test test.c
/opt/android/android-ndk-r9c/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: error: cannot open crtbegin_dynamic.o: No such file or directory
/opt/android/android-ndk-r9c/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: error: cannot open crtend_android.o: No such file or directory
/opt/android/android-ndk-r9c/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: error: cannot find -lc
/opt/android/android-ndk-r9c/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: error: cannot find -ldl
collect2: ld returned 1 exit status

我应该怎么做?

最佳答案

你需要让编译器知道去哪里寻找这些文件。 尝试使用:

arm-linux-androideabi-gcc --sysroot=/opt/android/android-ndk-r9c/platforms/android-19/arch-arm -o test test.c

其中 19 是您要使用的 android API 级别。您可以在 ndk 目录中找到有关 docs/STANDALONE-TOOLCHAIN.html 的更多信息。

关于android - arm-linux-androideabi编译器使用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21424366/

相关文章:

Ant编译的Android工程编译不通过,非法字符错误

c++ - 虚拟键码 : Same across ALL PC's

c++ - LLVM-如何使嵌套函数查看外部函数的变量

linux - Bash递归地在每个目录上执行命令

android - AAPT.EXE 在 eclipse(ANDROID) 中停止运行

java - Android:表行图像变胖并且不保持纵横比

android - 是否可以更改 Android Maps V2 中的 map 字体?

c++ - 嵌套 if else 语句 C++

Python 重新安装 --enable-unicode=ucs4 和 lxml undefined symbol : PyUnicodeUCS2_DecodeLatin1

linux - 如何在centos 7 vps中安装ffmpeg