当前位置: 技术问答>linux和unix
在arm上加载模块时出现问题
来源: 互联网 发布时间:2016-07-22
本文导语: 在arm上加载模块cipdb.o时出现问题 insmod cip.o之后就出现下面问题: cip.o: unresolved symbol ip6_output cip.o: unresolved symbol ipv6_recv_error 其中cip.o支持IPv6通信。 正常在Linux操作系统下是可以运行的,但用arm的编译器编译之后...
在arm上加载模块cipdb.o时出现问题
insmod cip.o之后就出现下面问题:
cip.o: unresolved symbol ip6_output
cip.o: unresolved symbol ipv6_recv_error
其中cip.o支持IPv6通信。
正常在Linux操作系统下是可以运行的,但用arm的编译器编译之后生成cip.o,在arm板加载时就出现上述问题。
这是怎么回事呢?
insmod cip.o之后就出现下面问题:
cip.o: unresolved symbol ip6_output
cip.o: unresolved symbol ipv6_recv_error
其中cip.o支持IPv6通信。
正常在Linux操作系统下是可以运行的,但用arm的编译器编译之后生成cip.o,在arm板加载时就出现上述问题。
这是怎么回事呢?
|
你的pc上的 和 arm板上的 内核版本一样吗?
可以把arm板上的内核代码改了
EXPORT_SYMBOL 把ip6_output ipv6_recv_error 导出
可以把arm板上的内核代码改了
EXPORT_SYMBOL 把ip6_output ipv6_recv_error 导出
|
很明显, 你 arm 上的 linux kernel 没有打开 ipv6 相关的配置选项。
重新编译内核吧。
重新编译内核吧。
|
楼上讲的都是对的,反正就是找不到符号的错误。
如果config里没有打开就打开,如果打开了还没有作用,就看看内核函数定义的代码部分有没有将符号导出
如果config里没有打开就打开,如果打开了还没有作用,就看看内核函数定义的代码部分有没有将符号导出