sys/types.h: 没有那个文件或目录
sys/types.h: No such file or directory
我正在尝试编译模块但出现此错误。
fatal error: sys/types.h: No such file or directory
compilation terminated.
这是我的模块文件头
#include <linux/init.h> // Macros used to mark up functions e.g. __init __exit
#include <linux/module.h> // Core header for loading LKMs into the kernel
#include <linux/device.h> // Header to support the kernel Driver Model
#include <linux/kernel.h> // Contains types, macros, functions for the kernel
#include <linux/fs.h> // Header for the Linux file system support
#include <asm/uaccess.h> // Required for the copy to user function
#include <sys/types.h>
还有我的Makefile
obj-m = test.o
all:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
我试图搜索这个文件
find /usr/include -name types.h
这是结果
/usr/include/sys/types.h
/usr/include/libr/sdb/types.h
/usr/include/rpc/types.h
/usr/include/i386-linux-gnu/sys/types.h
/usr/include/i386-linux-gnu/asm/types.h
/usr/include/i386-linux-gnu/bits/types.h
/usr/include/linux/iio/types.h
/usr/include/linux/types.h
/usr/include/x86_64-linux-gnu/sys/types.h
/usr/include/x86_64-linux-gnu/asm/types.h
/usr/include/x86_64-linux-gnu/bits/types.h
/usr/include/asm-generic/types.h
/usr/include/c++/5/parallel/types.h
我试着设置为#include "/usr/include/sys/types.h"
但出现以下错误
/usr/include/sys/types.h:25:22: fatal error: features.h: No such file or directory
compilation terminated.
我正在使用 Kali Linux(Debian)
AMD64 平台
Linux kali 4.5.0-kali1-amd64 #1 SMP Debian 4.5.5-1kali1 (2016-06-06) x86_64 GNU/Linux
怎么了?谢谢
已解决
抱歉,这是我的错,我打错了类型并试图包含 sys/types.h
文件,但在我的情况下,并不是所有类型都在 /usr/src/linux-headers-4.5.0-kali1-common/include/linux/types.h
中声明。谢谢大家。
我建议查看 gcc
是否正在使用以下命令在您的文件所在的目录中查找头文件:
`gcc -print-prog-name=cc1` -v # for c
您只需将 types
头文件添加到您的源文件,从 here 下载。
抱歉,这是我的错,我打错了类型并尝试包含 sys/types.h 文件,但并不是所有类型都在 /usr/src/linux-headers-4.5.0 中声明kali1-common/include/linux/types.h 在我的例子中。谢谢大家。
我在使用 Linux Mint
时遇到了类似的错误
fatal error: sys/types.h: No such file or directory
解决了这个问题:
sudo apt install libc6-dev
您可以通过以下方式解决此问题:
sudo apt-get install libc6-dev-i386
我正在尝试编译模块但出现此错误。
fatal error: sys/types.h: No such file or directory
compilation terminated.
这是我的模块文件头
#include <linux/init.h> // Macros used to mark up functions e.g. __init __exit
#include <linux/module.h> // Core header for loading LKMs into the kernel
#include <linux/device.h> // Header to support the kernel Driver Model
#include <linux/kernel.h> // Contains types, macros, functions for the kernel
#include <linux/fs.h> // Header for the Linux file system support
#include <asm/uaccess.h> // Required for the copy to user function
#include <sys/types.h>
还有我的Makefile
obj-m = test.o
all:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
我试图搜索这个文件
find /usr/include -name types.h
这是结果
/usr/include/sys/types.h
/usr/include/libr/sdb/types.h
/usr/include/rpc/types.h
/usr/include/i386-linux-gnu/sys/types.h
/usr/include/i386-linux-gnu/asm/types.h
/usr/include/i386-linux-gnu/bits/types.h
/usr/include/linux/iio/types.h
/usr/include/linux/types.h
/usr/include/x86_64-linux-gnu/sys/types.h
/usr/include/x86_64-linux-gnu/asm/types.h
/usr/include/x86_64-linux-gnu/bits/types.h
/usr/include/asm-generic/types.h
/usr/include/c++/5/parallel/types.h
我试着设置为#include "/usr/include/sys/types.h"
但出现以下错误
/usr/include/sys/types.h:25:22: fatal error: features.h: No such file or directory
compilation terminated.
我正在使用 Kali Linux(Debian)
AMD64 平台
Linux kali 4.5.0-kali1-amd64 #1 SMP Debian 4.5.5-1kali1 (2016-06-06) x86_64 GNU/Linux
怎么了?谢谢
已解决
抱歉,这是我的错,我打错了类型并试图包含 sys/types.h
文件,但在我的情况下,并不是所有类型都在 /usr/src/linux-headers-4.5.0-kali1-common/include/linux/types.h
中声明。谢谢大家。
我建议查看 gcc
是否正在使用以下命令在您的文件所在的目录中查找头文件:
`gcc -print-prog-name=cc1` -v # for c
您只需将 types
头文件添加到您的源文件,从 here 下载。
抱歉,这是我的错,我打错了类型并尝试包含 sys/types.h 文件,但并不是所有类型都在 /usr/src/linux-headers-4.5.0 中声明kali1-common/include/linux/types.h 在我的例子中。谢谢大家。
我在使用 Linux Mint
时遇到了类似的错误fatal error: sys/types.h: No such file or directory
解决了这个问题:
sudo apt install libc6-dev
您可以通过以下方式解决此问题:
sudo apt-get install libc6-dev-i386