当前位置: 技术问答>linux和unix
linux下包含头文件
来源: 互联网 发布时间:2017-02-17
本文导语: 我把自己的代码都写在了一个文件夹下,方便管理 我的目录结构如下: auto/drv/a_drv.c auto/inc/comm.h auto/app/comm.c 现在我想在a_drv.c里面include 了 comm.h 那么我的makefile 应该怎么修改呢? 下面是单独编译a_drv.c的make...
我把自己的代码都写在了一个文件夹下,方便管理
我的目录结构如下:
auto/drv/a_drv.c
auto/inc/comm.h
auto/app/comm.c
现在我想在a_drv.c里面include 了 comm.h 那么我的makefile 应该怎么修改呢?
下面是单独编译a_drv.c的makefile
ifneq ($(KERNELRELEASE),)
obj-m := front_panel_drv.o
else
KDIR := /opt/kernel
all:
make -C $(KDIR) M=$(PWD) modules ARCH=arm CROSS_COMPILE=/opt/arm-2008q1/bin/arm-none-linux-gnueabi-
cp front_panel_drv.ko /opt/nfs/lambda/drv
clean:
rm -f *.ko *.o *.mod.o *.mod.c *.symvers modul*
endif
我的目录结构如下:
auto/drv/a_drv.c
auto/inc/comm.h
auto/app/comm.c
现在我想在a_drv.c里面include 了 comm.h 那么我的makefile 应该怎么修改呢?
下面是单独编译a_drv.c的makefile
ifneq ($(KERNELRELEASE),)
obj-m := front_panel_drv.o
else
KDIR := /opt/kernel
all:
make -C $(KDIR) M=$(PWD) modules ARCH=arm CROSS_COMPILE=/opt/arm-2008q1/bin/arm-none-linux-gnueabi-
cp front_panel_drv.ko /opt/nfs/lambda/drv
clean:
rm -f *.ko *.o *.mod.o *.mod.c *.symvers modul*
endif
|
对,需要加到依赖关系里。
obj-m := front_panel_drv.o ../inc/comm.h
obj-m := front_panel_drv.o ../inc/comm.h
|
只要你的点C文件中引用头文件的路径是对的。就没有什么问题!
|
还有,你的Makefile最好写在和点C文件一个目录下。