首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于arm-eabi-gcc与交叉编译

关于arm-eabi-gcc与交叉编译
EN

Stack Overflow用户
提问于 2011-05-07 15:28:24
回答 1查看 18.4K关注 0票数 8

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

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

代码语言:javascript
复制
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位类型!

这可能意味着什么?如何修复和正确配置库?也许我可以以某种方式让你更容易地配置库?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-07 16:14:10

我认为使用./configure脚本为Android构建库是困难的(甚至是不可能的)。安卓有自己的原生代码构建系统Android.mk,我认为这将是最简单的方法。您必须手动准备这样makefile,然后使用NDK附带的NDK构建脚本。与NDK示例一起安装,您可以在那里检查这些文件可能是什么样子。

如果您只想运行configure来生成config.h,请访问此链接http://warpedtimes.wordpress.com/2010/02/03/building-open-source-libraries-with-android-ndk/。它包含以下./configure参数集可能起作用的信息

代码语言:javascript
复制
./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 “
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5919710

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档