当前位置:  技术问答>linux和unix

为什么我的程序源文件里不能包含内核头文件?

    来源: 互联网  发布时间:2016-01-18

    本文导语:  编写了一个内核程序,想先生成.o文件,然后再连接到其他文件生成.ko文件。 下面一层(这一层可以包含内核头文件)把linux内核中提供的函数做了封装,这一层只是对下面一层调用,现在想改一下,让本层直接用内核...

编写了一个内核程序,想先生成.o文件,然后再连接到其他文件生成.ko文件。
下面一层(这一层可以包含内核头文件)把linux内核中提供的函数做了封装,这一层只是对下面一层调用,现在想改一下,让本层直接用内核提供的函数,但一在源文件里加上包含内核头文件的语句(像#include),就提示找不到sched.h这个文件。估计是Makefile的问题,请大家帮忙看一下:
Makefile
---------------------------------------------------------------------------
#source file
SUBDIRS :=
SUBDIRS := abc
SUBDIRS := abcd
SUBDIRS := abcde

AD_SRC := $(foreach subdir, $(SUBDIRS), $(wildcard $(subdir)/*.c))

#obj files
AD_OBJ := $(AD_SRC:.c=.o)

#dependecy files
AD_DEP := $(AD_SRC:.c=.d)

#final target
LIB_DIRS = $(CURDIR)/../lib
LIB_NAME = ad.o

#rules to make the objs

CC = gcc
LD = ld
MV = mv

CFLAGS :=
CFLAGS := -I $(CURDIR)/h
CFLAGS := -I $(CURDIR)/../h
CFLAGS := -Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Os -fomit-frame-pointer -g -Wdeclaration-after-statement -pipe -msoft-float -m32 -fno-builtin-sprintf -fno-builtin-log2 -fno-builtin-puts -mpreferred-stack-boundary=2 -fno-unit-at-a-time -march=i686 -mregparm=3

LDFLAGS :=
LDFLAGS += -r

%.o : %.c
        @$(CC) -M -MT $*.o -c $(CFLAGS) $

    
 
 

您可能感兴趣的文章:

  • 求几个完整的Java程序,什么内容的程序都行,要包含工程文件和全部源文件,主要用于学习,发者就给分。
  • 程序中报错时如何打印出当前源文件名和行号?
  • 使用C# Winform应用程序获取网页源文件的解决方法
  • RH-Linux 9下添加删除程序需要插入cd1,但我是从硬盘安装的。如何修改安装源文件路径?
  • 请教由一个源文件到程序最终执行过程的几个问题
  • 各位高人,关于IDE的驱动程序,我看蒙了,谁能告诉我到底linux源文件中到底那些是跟IDE硬盘驱动有关的?
  • gcc编译时so库和源文件在同一个目录,如果用-L.编译出来的程序为什么还说是找不到so库?
  • gcc如何编译带有源文件的c++程序
  • Linux下c/c++开发之程序崩溃(Segment fault)时内核转储文件(core dump)生成设置方法
  • Fedora Core 2自带的内核升级程序下载下来内核后,要不要再编译一遍内核?
  • 请问linux中如何判断内核是否已经启动。(在内核中写程序)
  • 对于操作系统的程序接口,作业接口,单内核,微内核到底有什么区别?
  • 新手的菜鸟问题:不同内核版本下编译的程序能否互相调用,是否需要在同一内核下重新编译.
  • 请问重新编译LINUX内核是否能将没有用的外设的驱动程序删除并减少内核占有内存的资源?请好心人仕指教!
  • 【求助】基于2.6.29内核编译的驱动程序能否应用于2.6.32内核的系统?
  • 内核空间能否调用用户空间程序?
  • 走虚拟网卡内核程序和走物理网卡应用程序结合问题
  • 实现同样的功能,内核程序和用户程序差别效率上差别大么?
  • linux驱动程序是怎样通过内核和应用程序通信,还有是怎样和硬件通信,跪求求解,谢谢高手留言。
  • 自己编写一个程序编译进内核,要修改makefile文件吗?
  • 如何将驱动程序嵌入到内核中?
  • 用户态程序如何和多个内核模块进行同时数据交互??
  • 用户空间的程序如何改成运行于内核的?
  • 请教一个问题:程序在Linux 2.4.20内核上跑无问题。但在2.4.19内核上跑就出现段错误现象。查了一星期,毫无头绪,万望各位指点。
  • 程序中报错时如何打印出当前源文件名和行号? iis7站长之家
  • 配置内核的可视化程序是哪个?
  • !请问,新下载的驱动程序该如何编译进内核呢?
  • 内核程序的,入门问题!
  • 如何用Eclipse编写内核模块程序?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 一个静态库包含多个函数,应用程序连接了库中的某个函数,应用程序目标代码中是否还包含了该静态库中的其他函数代码?
  • 程序包含头文件的问题
  • 请问哪里有用gtk做的程序,并包含源代码下载?
  • 请教:修改Linux内核时,需要调用驱动程序的函数,头文件也包含了,但是编译时候说头文件找不到!
  • 请问:在proc程序中,若里面有模板的类型,能不能通过预编译啊,(编译时老是无法识别类型,我的头文件都已包含了)
  • 如何编译一个包含用户级代码和内核级代码的程序
  • 如何让包含javax.swing组件的小程序在<Applet code=XXX.jar></Applet>中执行?
  • 菜鸟问题: redhat linux 编译一个最简单的c程序, 其中包含了<studio.h>头文件,但在gcc编译时,提示找不到studio.h文件,请问各位大大
  • 从网上载了个C++程序的源代码,包含38个.cpp和.h,还有makefile.in和makefile.am两个文件,但无configure和makefile.请问怎么编译?谢谢!
  • 请问:一个proc程序s1.pc, 它的相应头文件为s1.h, s1.pc包含s1.h 这种情况下怎样将s1.pc预编译为s1.c啊?
  • 关于gcc编译包含gtk+程序的问题!有图
  • linux下c程序如何包含头文件
  • 重装服务器后IIS网站错误(应用程序中的服务器错误)
  • 为什么我在java程序里启动的一个程序在java程序关闭后,该程序的所有进程都关掉了
  • windows server2008上PowerBuilder程序系统错误解决方法
  • Linux 编程怎么样在程序开启一个程序,和关闭一个程序?
  • c语言判断某一年是否为闰年的各种实现程序代码
  • 请问从一个java程序中如何调用另一java程序,并控制可以其状态(最小化、最大化、结束程序),还有怎样知道那个被调用的程序结束。
  • 程序员的八种级别,你属于哪一级?
  • Linux下的程序是在内存中运行的吗?为什么在程序运行的时候可以删除程序文件?
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 我的程序是用c写的gtk+程序,有个函数的参数要传给它图片的文件名,但是图片和原程序不在同一目录下怎么办?怎么在程序里指定文件的路径
  • 在docker容器中通过apt-get安装新的程序
  • 为什么linux下的C++程序这么少见? 请问那里有linux下的C++程序?什么类型的程序都可以.
  • linux下通过crond实现自动执行程序
  • 我写了个linux下的网络程序,程序在多个电脑间通信,但是我没有多个电脑,怎么调试这样的程序啊?
  • http协议介绍,文件上传分析及程序举例
  • 在java控制台程序中,可以用System.exit(0);使用一个程序终止,那么在servlet中如何使一个servlet程序终止呢?
  • 程序员赚钱致富的6种方法
  • 程序调用脚本,脚本启动另一个程序,如何让原始程序彻底释放资源?
  • HASH查找的程序实现及性能分析


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3