【问题标题】:Cross compiling stand alone application?交叉编译独立应用程序?
【发布时间】:2016-03-28 11:09:54
【问题描述】:

我正在尝试为 arm 板交叉编译一个独立的应用程序,最重要的是我想在没有 Android.mk 框架的情况下编译它。

我有以下疑问:-

1- 我应该使用哪个工具(arm-eabi 或 arm-linux-androideabi 等)。

2- 我应该从哪里下载相关的库和工具链 零件。

3- 我应该单独包含哪些编译标志 编译(完全静态)。

如果问题不清楚,请评论也请添加我缺少的相关信息,详细信息将不胜感激。

【问题讨论】:

标签: gcc arm cross-compiling toolchain gnu-toolchain


【解决方案1】:

Standalone Toolchain NDK 的一部分准确地涵盖了这一点。

首先编译器需要知道 sysroot 的位置,这样它才能找到标准库。

SYSROOT=$NDK/platforms/android-21/arch-arm

然后你可以这样做

export CC="$NDK/toolchains/arm-linux-androideabi-4.8/prebuilt/ \
linux-x86/bin/arm-linux-androideabi-gcc-4.8 --sysroot=$SYSROOT"  $CC -o foo.o -c foo.c

对于静态编译,只需在调用中添加 -static

高级方法是将某个工具链安装到目录中,然后您可以直接调用该目录而无需指定 sysroot。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多