编译Android下纯C的静态程,编译Android下纯C的静态程序,undefined reference to raise

尝试在Android下编译纯C的静态程序,执行gcc -v -static -o sayhi sayhi.c后有3条重要的命令

ccl -quiet -v -iprefix /home/carmenloklok/android-ndk-r8/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/arm-linux-androideabi/bin/../lib/gcc/arm-linux-androideabi/4.4.3/ sayhi.c -mbionic -fpic -quiet -dumpbase sayhi.c -march=armv5te -mfloat-abi=soft -mfpu=vfp -auxbase sayhi -version -o /tmp/cc1JRQYL.s

as -v -march=armv5te -mfloat-abi=soft -mfpu=vfp -meabi=5 -o /tmp/ccqjmzvz.o /tmp/cc1JRQYL.s

ld --sysroot=/home/ahsieh/ndk-release/ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/sysroot -Bstatic -dynamic-linker /system/bin/linker -X -m armelf_linux_eabi -o sayhi crtbegin_static.o /tmp/ccqjmzvz.o --start-group -lgcc -lc --end-group crtend_android.o

我一开始没有执行gcc -v -o sayhi sayhi.c来看.没有在ld的参数里加上 -Bstatic 和 --start-group --end-group .于是会出现 undefined reference to raise .具体的原因没有查出.好像是因为eabi的缘故.一段时间后查一下具体的原因,以及--start-group --end-group的作用.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值