在gcc命令中添加linux标头

问题描述 投票:0回答:1

因此,我试图在ubuntu16.04的c文件中包含一些标头。

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/stat.h>
#include <sys/mman.h>
#include <sys/types.h>
#include <fcntl.h>
#include <errno.h>

#include "list.h"
#include "phypages.h"
#include "pagetable.h"

它有错误:

fatal error: list.h: No such file or directory

我发现所有linux头文件都在

/usr/src/linux-headers-4.4.0-164/include/linux

所以我用-I包括在内

gcc XXX.c -o XXX -I/usr/src/linux-headers-4.4.0-164/include/linux

但是有错误

/usr/src/linux-headers-4.4.0-164/include/linux/stddef.h:4:31: fatal error: uapi/linux/stddef.h: No such file or directory

有人可以帮忙吗?谢谢!

c linux gcc g++ kernel
1个回答
0
投票

建议使用;

gcc XXX.c -o XXX -I/usr/include -I/usr/src/linux-headers-4.4.0-164/include/linux

因此,在搜索Linux头文件之前先搜索'普通'C头文件

© www.soinside.com 2019 - 2024. All rights reserved.