gcc 在 ubuntu 12.04 中找不到 slab.h?

gcc 在 ubuntu 12.04 中找不到 slab.h?

如果我遗漏了什么,请纠正我。感谢您的意见。

代码中包含的标头:#include <linux/slab.h>

我的文件中要求使用“kmalloc()”进行内存分配的代码片段:

/*
 * Initialize memory.
 */
 char* fs_ptr;
 fs_ptr = kmalloc((sizeof(char) * 20), GFP_USER);

 if (!fs_ptr) 
       printf("Error allocating space in memory.\n");
 }

编译错误:

$ make
gcc -g -Wall `pkg-config fuse --cflags` -c fs.c
fs.c:43:24: fatal error: linux/slab.h: No such file or directory
compilation terminated.

Ubuntu 版本信息:

$ uname -a
Linux ubuntu 3.8.0-33-generic #48~precise1-Ubuntu SMP Thu Oct 24 16:28:06 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

头文件的位置,通过‘locate’搜索:

$ locate slab.h
/usr/src/linux-headers-3.8.0-29/include/linux/slab.h
/usr/src/linux-headers-3.8.0-29-generic/include/linux/slab.h
/usr/src/linux-headers-3.8.0-31/include/linux/slab.h
/usr/src/linux-headers-3.8.0-31-generic/include/linux/slab.h
/usr/src/linux-headers-3.8.0-32/include/linux/slab.h
/usr/src/linux-headers-3.8.0-32-generic/include/linux/slab.h
/usr/src/linux-headers-3.8.0-33/include/linux/slab.h
/usr/src/linux-headers-3.8.0-33-generic/include/linux/slab.h

相关内容