快乐虾
http://blog.youkuaiyun.com/lights_joy/
lights@hb165.com
本文适用于
ADI bf561 DSP
uclinux-2008r1.5-rc3(smp patch)
Visual DSP++ 5.0(update 5)
欢迎转载,但请保留作者信息
有一个错误:
"..\..\linux-2.6.x\include\linux/pid_namespace.h", line 20: cc0020: error:
identifier "CONFIG_BASE_SMALL" is undefined
struct pidmap pidmap[PIDMAP_ENTRIES];
错误指向的语句为:
struct pid_namespace {
struct kref kref;
struct pidmap pidmap[PIDMAP_ENTRIES];
int last_pid;
struct task_struct *child_reaper;
};
问题在PIDMAP_ENTRIES身上:
#define PIDMAP_ENTRIES ((PID_MAX_LIMIT + 8*PAGE_SIZE - 1)/PAGE_SIZE/8)
#define PID_MAX_LIMIT (CONFIG_BASE_SMALL ? PAGE_SIZE * 8 : \
(sizeof(long) > 4 ? 4 * 1024 * 1024 : PID_MAX_DEFAULT))
错误提示中的CONFIG_BASE_SMALL就在此处。
搜索一下CONFIG_BASE_SMALL,其中有两个结果:
F:\embed\uClinux\uClinux-dist-2008R1.5-RC3\linux-2.6.x\.config(76):CONFIG_BASE_SMALL=0
F:\embed\uClinux\uClinux-dist-2008R1.5-RC3\linux-2.6.x\arch\blackfin\configs\BF561-EZKIT_defconfig(74):CONFIG_BASE_SMALL=0
暂时不了解CONFIG_BASE_SMALL在内核中的意义,只能根据这两个结果在config.h中将之定义为0。
#define CONFIG_BASE_SMALL 0
1 参考资料
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(33):.l1.text(2009-01-16)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(34):.init.text(2009-01-16)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(35):.init.data(2009-01-16)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(36):.data.init_task(2009-01-16)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(37):segment(2009-01-16)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(38):未命名union的问题(2009-01-16)
本文解决在ADI bf561 DSP开发板上移植uCLinux-2008r1.5-rc3过程中遇到的PID Namespace相关编译错误。通过对CONFIG_BASE_SMALL配置的理解与调整,成功解决了编译过程中的标识符未定义问题。
710

被折叠的 条评论
为什么被折叠?



