在linux的驱动Makefile中添加调试选项
来源:互联网 发布:最新淘宝黑科技漏洞 编辑:程序博客网 时间:2024/05/16 07:19
在编译linux驱动的时候添加-g等调试选项将会很方便调试,如反汇编等。
添加方法很简单。只需要给环境变量EXTRA_CFLAGS赋值-g就行了,开始我以为需要明确指定-g,就像编译应用程序那样,gcc main.c -g -o test,原来系统中保留的环境变量EXTRA_CFLAGS,直接给他赋值就行了。
如下面的Makfile:
1 TOP := $(shell pwd)/../../..
2 -include $(TOP)/make/Makefile.param
3
4 MOD_PCM = snd-soc-pcm
5 MOD_I2S = snd-soc-i2s
6 MOD_CARD = snd-soc-card
7
8 MOD_NAME += $(MOD_PCM) $(MOD_I2S) $(MOD_CARD)
9
10 LINUX_SRC = $(KERNEL_DIR)
11 LINUX_SRC_MODULE = $(IMAGE_DIR)/sys/lib/modules/$(LINUX_VERSION)/kernel/sound/soc/
12 LINUX_VERSION = $(shell cat $(KERNEL_DIR)/include/config/kernel.release 2> /dev/null)
13 BASE_DIR = $(SYS_DIR)
14 EXTRA_CFLAGS = -g
15
16 ifneq ($(KERNELRELEASE),)
17 obj-m := $(MOD_PCM).o $(MOD_I2S).o $(MOD_CARD).o
18 $(MOD_PCM)-objs := pcm.o
19 $(MOD_I2S)-objs := i2s.o
20 $(MOD_CARD)-objs := card.o
21
22 else
23 PWD:=$(shell pwd)
24 default:
25 make -C $(KERNEL_DIR) M=$(PWD) modules
26
27 install:
28 install -d $(LINUX_SRC_MODULE)
29 install -m 644 -c $(addsuffix .ko,$(MOD_NAME)) $(LINUX_SRC_MODULE)
30 echo $(LINUX_VERSION)
31 /sbin/depmod -b $(BASE_DIR) -F $(LINUX_SRC)/System.map -v $(LINUX_VERSION) -a
32
33 clean:
34 rm -rf *.symvers *.order *.o *.mod.c *.mod.o *.ko .*.ko.cmd .*.o.cmd .tmp_versions
35 rm -rf $(addprefix $(LINUX_SRC_MODULE),$(addsuffix .ko,$(MOD_NAME)))
36 /sbin/depmod -b $(BASE_DIR) -F $(LINUX_SRC)/System.map -v $(LINUX_VERSION) -a
37 endif
38
39 cp:
40 cp -frv *.ko /home/tftpboot/me
- 在linux的驱动Makefile中添加调试选项
- 怎么在linux下makefile文件中添加调试选项
- 如何在内核中添加新的驱动配置选项
- 在menuconfig 菜单中添加自己编写的驱动选项
- 在Linux内核中增加驱动选项
- 在linux内核驱动树中添加自己的驱动
- 在linux内核驱动树中添加自己的驱动
- 如何在linux内核中增加对应的Makefile和Kconfig选项?
- Kconfig menuconfig .config Makefile之间的关系及如何在内核中添加驱动
- linux 添加huwei3g驱动的调试流程
- Linux驱动添加的基本流程(SDRAM中调试驱动)
- Makefile Kconfig 内核配置————怎样在menuconfig中添加一个菜单选项
- Linux内核的Makefile和kconfig解读,如何在内核中添加自己的代码
- Linux内核的Makefile和kconfig解读,如何在内核中添加自己的代码
- 如何在Linux kernel Makefile中添加宏定义
- linux 驱动调试添加调试宏方法
- linux驱动-在PC机下编译驱动程序的Makefile
- 在Linux驱动之中通过修改kconfig文件添加menuconfig选项
- Poj.2826 An Easy Problem?![【计算几何-线段】 2015/08/28
- 双色球初探
- Struts ForwardAction Example
- TCP连接探测中的Keepalive和心跳包. 关键字: tcp keepalive, 心跳, 保活
- 【MySQL】mysql join语法解析与性能分析
- 在linux的驱动Makefile中添加调试选项
- 人际关系学之秩序
- Region拆分逻辑
- FFmpeg+sdl代码注释学习---多线程
- ubuntu之组和用户名
- LeetCode题解:Merge Two Sorted Lists
- Android之——史上最简单旋转菜单实现效果
- HeartBeat心跳包和TCP协议的KeepAlive机制 不指定
- 基于 Annotation 拦截的 Spring AOP 权限验证方法