免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3826 | 回复: 5
打印 上一主题 下一主题

如何解决编译错误 unknown ABI specified: '32' [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-02-19 14:59 |只看该作者 |倒序浏览
5可用积分
在linux-2.6.20内核下,编译一个驱动模块时,出现了下列的一些错误:

make -C /home/linux-2.6.20-0910 SUBDIRS=/home/linux-2.6.20-0910/drivers/..../test modules
cc1: error: invalid option 'no-abicalls'
/dev/null:0: error: unknown ABI specified: '32'

make[2]: Entering directory `/home/linux-2.6.20-0910'
  CC [M]  /home/linux-2.6.20-0910/drivers/test.o
cc1: error: invalid option 'no-abicalls'
cc1: error: invalid option 'no-abicalls'
cc1: error: invalid option 'arch=r4600'
cc1: error: invalid option 'long-calls'
/..../test.c:1: error: unknown ABI specified: '32'

去掉那些报错的编译选项后,unknown ABI specified: '32'的错误仍存在。请教高手,这个错误怎么解决?
我只有5分,全部奉送。

最佳答案

查看完整内容

ARCH都改了, 什么都得改, 你想编译一个for MIPS的module,那就against一个MIPS的build来编译吧,不要在ppc的基础上编译。

论坛徽章:
0
2 [报告]
发表于 2008-02-19 14:59 |只看该作者
ARCH都改了, 什么都得改, 你想编译一个for MIPS的module,那就against一个MIPS的build来编译吧,不要在ppc的基础上编译。

论坛徽章:
0
3 [报告]
发表于 2008-02-19 15:15 |只看该作者
请: make 时加上V=1,再贴一下错误结果

论坛徽章:
0
4 [报告]
发表于 2008-02-19 16:09 |只看该作者

回复 #2 albcamus 的帖子

make V=1 的错误如下:
cc1: error: invalid option 'no-abicalls'
cc1: error: invalid option 'ips32'
/dev/null:0: error: unknown ABI specified: '32'
make[2]: Entering directory `/home/linux-2.6.20-0910'
test -e include/linux/autoconf.h -a -e include/config/auto.conf || (            \
        echo;                                                           \
        echo "  ERROR: Kernel configuration is invalid.";               \
        echo "         include/linux/autoconf.h or include/config/auto.conf are missing.";      \
        echo "         Run 'make oldconfig && make prepare' on kernel src to fix it.";  \
        echo;                                                           \
        /bin/false)

......(省略一堆编译选项)

cc1: error: invalid option 'no-abicalls'
cc1: error: invalid option 'ips32'
cc1: error: invalid option 'no-abicalls'
cc1: error: invalid option 'arch=r4600'
cc1: error: invalid option 'long-calls'
/..../test.c:1: error: unknown ABI specified: '32'
Assembler messages:
Error: invalid switch -mips32
Error: unrecognized option -mips32

说明:
我是在一个旧系统上编译一个新模块,作了点改动,把原来的 ARCH=powerpc 改成了 ARCH = mips,其他未作改动。该错误是不是由于还有其他地方没有作相应改动造成的冲突?但我不知道还需要在哪改。

论坛徽章:
0
5 [报告]
发表于 2008-02-20 10:40 |只看该作者
换了一个系统,把这个问题绕过了。但是,有谁知道造成这个问题的根本原因是什么?如果在ARCH=powerpc的系统基础上作更改,需要改哪些东西?

论坛徽章:
0
6 [报告]
发表于 2008-02-20 17:55 |只看该作者
算了,结帖。谢谢 albcamus 。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP