设为首页 加入收藏

TOP

多源文件的Linux驱动Makefile编写
2014-11-24 08:39:32 来源: 作者: 【 】 浏览:0
Tags:源文件 Linux 驱动 Makefile 编写

以前写的的都是一些如led数码管简单的驱动,今天在写linux lcd驱动的时候,将代码分成了几个模块,每个模块用一个.h和.c对应,最后在组合在一起。结果在编译时总是提示函数未定义,但是我明明包含了头文件。


make -C /home/longjun/linux-2.6.24.4 M=/home/longjun/arm2440/lcd_debug modules


make[1]: Entering directory `/home/longjun/linux-2.6.24.4'


Building modules, stage 2.


MODPOST 1 modules


WARNING: "sayHello" [/home/longjun/arm2440/lcd_debug/lcd.ko] undefined!


make[1]: Leaving directory `/home/longjun/linux-2.6.24.4'


最后找到了问题的根源是makefile出现了问题,于是将今天的收获记下来


新建a.h和a.c两个文件,用来测试


1、简单的在a.h文件中定义一个方法


#ifndef _A_H_


#define _A_H_


void sayHello(void);


#endif


2、在a.c中实现sayHello方法


#include"a.h"


void sayHello(void)


{


printk("hello world!\n");


}


3.这是lcd驱动的文件结构,所有的文件都放在一个目录下


. a.h lcd.c lcd.h Makefile types.h


.. framebuffer.c lcddrv.c lcdlib.c


a.c framebuffer.h lcddrv.h lcdlib.h


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux Shell脚本系列-文件安全与.. 下一篇Linux内核模块获取设备IP地址

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Redis on AWS:Elast (2025-12-27 04:19:30)
·在 Spring Boot 项目 (2025-12-27 04:19:27)
·使用华为开发者空间 (2025-12-27 04:19:24)
·Getting Started wit (2025-12-27 03:49:24)
·Ubuntu 上最好用的中 (2025-12-27 03:49:20)