在配置和构建与主板上使用的内核匹配的内核之后,我正在基于ARM的系统Sabrelite http://boundarydevices.com/products/sabre-lite-imx6-sbc/ .........上实现ad hoc AODV路由协议。我收到以下错误:

错误:未知类型名称'__kernel_ulong_t'
  __kernel_ulong_t加载[3]; / * 1、5和15分钟的平均负载* /

错误:未知类型名称'__kernel_ulong_t'
  __kernel_ulong_t totalram; / *总可用主内存大小* /
  ^

/usr/local/oecore-x86_64/sysroots/cortexa9hf-vfp-neon-oe-linux-gnueabi/usr/include/linux/sysinfo.h:18:2:错误:未知类型名称'__kernel_ulong_t'
  __kernel_ulong_t freeram; / *可用内存大小* /
  ^

错误:未知类型名称'__kernel_ulong_t'
  __kernel_ulong_t sharedram; / *共享内存量* /
  ^

/usr/local/oecore-x86_64/sysroots/cortexa9hf-vfp-neon-oe-linux-gnueabi/usr/include/linux/sysinfo.h:28:22:错误:此处未声明'__kernel_ulong_t'(不在函数中)
  字符_f [20-2 * sizeof(__ kernel_ulong_t)-sizeof(__ u32)]; / *填充:libc5使用此。.* /
                      ^
make:* [nl-arm.o]错误1

正如错误所暗示的那样,它与交叉编译源代码树一起存在,但我不知道我怎么会得到这些错误,因为所使用的SDK可以完美地工作。

我遵循了AODV软件包提供的README文件中引用的教程。

有没有人有过在ARM上实现AODV的经验?他们有没有得到这些错误

我该如何解决这些问题?
谢谢

最佳答案

好了,解决方案是正确升级makefile以使其适用于2.6后的内核。如果您碰巧阅读此页面:像这样编写您的makefile:http://lwn.net/Articles/21823/

关于c - 在ARM(SabreLIte)上实现AODV时出错,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25220056/

10-08 21:30