我正在尝试在最新版本的ubuntu上编译C程序,以便稍后将编译后的程序放在另一台机器上。但是,当我使用 gcc prog.c -o prog 编译时,出现错误:“致命错误:asm/page.h:没有这样的文件或目录”以下是标题:
#include <stdio.h>
#include <errno.h>
#include <stdlib.h>
#include <string.h>
#include <malloc.h>
#include <limits.h>
#include <signal.h>
#include <unistd.h>
#include <sys/uio.h>
#include <sys/mman.h>
#include <asm/page.h>
#include <asm/unistd.h>
我在 #include 处收到错误。它说致命错误:asm/page.h:没有这样的文件或目录。就像我说的,我只是想编译它。有没有办法让我得到丢失的标题或其他东西?谢谢。
通常,asm/page.h
只存在于Linux内核树中,通常位于arch/<archname>/asm/page.h
,并且只能被内核代码(或内核模块)使用。
stdio.h
and stdlib.h
另一方面,不能在内核代码中使用。
因此,您的原始源代码充其量看起来很可疑。很可能它从来不需要那个asm/page.h
首先,实际上它只需要类似的东西linux/types.h
(这是内核之一包含的标头之一asm/page.h
).
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)