gpt4 book ai didi

android - 关于arm-eabi-gcc和交叉编译

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:55:52 25 4
gpt4 key购买 nike

我有一个复杂的开源库需要移植到安卓NDK。首先,我需要配置 (./Configure)。我明白:我必须使用/home/user/android-ndk/build/prebuilt/进行交叉编译linux-x86/arm-eabi-4.4.0/bin/arm-eabi-gcc我觉得对吗?该实用程序将正确配置库?如果是的,那么问题2:

1.我正在尝试编译这样一个库:libao。使用这些命令:


PREBUILT = / home/user/android-ndk/build/prebuilt/linux-x86/arm-
eabi-4.4.0
PLATFORM = / home/user/android-ndk/build/platforms/android-3/arch-arm
INSTALL = / home/user/sox-14.3.2/com

export CC = "/ home/user/android-ndk/build/prebuilt/linux-x86/arm-
eabi-4.4.0/bin/arm-eabi-gcc"
export CFLAGS = "-fPIC-DANDROID"
export LDFLAGS = "-Wl,-T, $ PREBUILT / arm-eabi / lib / ldscripts /
armelf.x-Wl,-rpath-link = $ PLATFORM / usr / lib-L $ PLATFORM / usr /
lib-nostdlib $ PREBUILT / lib/gcc/arm-eabi/4.4.0/crtbegin.o $ PREBUILT/
lib/gcc/arm-eabi/4.4.0/crtend.o-lc-lm-ldl "

. / Configure - host = arm - with-gnu-ld - enable-shared \

在组装结束时收到以下内容:配置:错误:在此平台上找不到 16 位类型!

这意味着什么?如何修复和正确配置库?也许我可以更轻松地配置库?

最佳答案

我认为很难(甚至不可能)使用 ./configure 脚本为 Android 构建库。 Android有自己的构建系统Android.mk对于 native 代码,我认为这将是最简单的方法。您必须手动准备此类 makefile,然后使用 NDK 附带的 ndk-build 脚本。与 NDK 示例一起安装,您可以在那里检查此类文件的外观。

如果您只想运行配置来生成 config.h,请点击此链接 http://warpedtimes.wordpress.com/2010/02/03/building-open-source-libraries-with-android-ndk/ .它包含有关 ./configure 的以下参数集可能有效的信息

./configure –host=arm-eabi CC=arm-eabi-gcc CPPFLAGS=”-I$ANDROID_ROOT/build/platforms/android-3/arch-arm/usr/include/” CFLAGS=”-nostdlib” LDFLAGS=”-Wl,-rpath-link=$ANDROID_ROOT/build/platforms/android-3/arch-arm/usr/lib/ -L$ANDROID_ROOT/build/platforms/android-3/arch-arm/usr/lib/” LIBS=”-lc “

关于android - 关于arm-eabi-gcc和交叉编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5919710/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com