文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>解决__aeabi_unwind_cpp_*问题

解决__aeabi_unwind_cpp_*问题

时间:2010-12-02  来源:ruizhe

 

注:又在CodeSourcery上发现原来arm-none-eabi-xxx和arm-none-linux-gnueabi-xxx原来不一样啊,用arm-none-eabi-xxx编译裸程序的话不用加参数也可以正常通过,参考:http://www.codesourcery.com/archives/arm-gnu/msg02478.html

 

用带有eabi的arm-linux-gcc编译祼程序的时候经常会出错,像我的4.4.1中编译出错如下:
led_on_c.o:(.ARM.exidx+0×0): undefined reference to `__aeabi_unwind_cpp_pr0′

在arm-linux-gcc的选项中加入:
-fno-exceptions
-fno-unwind-tables
-fno-asynchronous-unwind-tables

 

4.4.1说不认识-fno-exceptions选项,去掉这个选项只加后两个就可以编译通过。

 

原文:http://www.codesourcery.com/archives/arm-gnu/msg03196.html
原文中涉及到的“Exception Handling ABI for ARM architecture“也本地一份[下载]

 

 

grep 了一下linux源码发现在arch/arm/Makefile的83~91行有这么一段(我的是2.6.30.4):

ifeq ($(CONFIG_AEABI),y)
CFLAGS_ABI:=-mabi=aapcs-linux -mno-thumb-interwork
else
CFLAGS_ABI:=$(call cc-option,-mapcs-32,-mabi=apcs-gnu) $(call cc-option,-mno-thumb-interwork,)
endif

ifeq ($(CONFIG_ARM_UNWIND),y)
CFLAGS_ABI+=-funwind-tables
endif

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载