| 
			 
					阅读:22622回复:97
				 
				linux设备驱动程序(中文第三版) 2.6内核
					    linux设备驱动程序(中文第三版) 2.6内核				 
							 | 
	|
					
  | 
	
| 
			 沙发# 
								发布于:2007-06-04 16:44				
			
					3q3q				 
							 | 
	|
					
						
  | 
	
| 
			 板凳# 
								发布于:2007-06-04 21:45				
			
					en  ,3q				 
							 | 
	|
| 
			 地板# 
								发布于:2007-06-06 11:08				
			
					首先表示感谢,但是也有疑问 
							对于它所列举的helloworld 我用gcc -O2 -Wall -DMODULE -D__KERNEL__ -I/usr/src/linux/include/ -c hello.c -o hello.ko 编译可以通过,但是insmod却报错: insmod: error inserting './hello.ko': -1 invalid module format 这是怎么回事啊 ?  | 
	|
| 
			 地下室# 
								发布于:2007-06-07 22:28				
			
					-o hello.o  试试				 
							 | 
	|
| 
			 5楼# 
								发布于:2007-06-08 12:53				
			
					不错,谢谢				 
							 | 
	|
					
						
  | 
	
| 
			 6楼# 
								发布于:2007-06-11 10:47				
			
					thx				 
							 | 
	|
| 
			 7楼# 
								发布于:2007-06-13 17:12				
			
					不错啊  
							谢谢分享  | 
	|
| 
			 8楼# 
								发布于:2007-06-15 14:11				
			
					谢谢分享!				 
							 | 
	|
| 
			 9楼# 
								发布于:2007-06-19 23:42				
			
					谢谢分享!				 
							 | 
	|
| 
			 10楼# 
								发布于:2007-06-20 11:18				
			
					谢谢!很有用!				 
							 | 
	|
| 
			 11楼# 
								发布于:2007-06-20 14:13				
			  下了一份,,,linux的驱动也挺有意思的,,,,				 | 
	|
| 
			 12楼# 
								发布于:2007-06-23 16:23				
			
					收藏,谢谢~~				 
							 | 
	|
| 
			 13楼# 
								发布于:2007-06-27 09:46				
			
					谢谢版主!非常需要这种好书!				 
							 | 
	|
| 
			 14楼# 
								发布于:2007-06-28 15:24				
			
					感谢LZ无私奉献				 
							 | 
	|
| 
			 15楼# 
								发布于:2007-07-01 23:00				
			
					#include <linux/kernel.h> 
							#include <linux/module.h> MODULE_LICENSE("Dual BSD/GPL"); static int hello_init(void) { printk(KERN_ALERT "Hello, world\n"); return 0; } static void hello_exit(void) { printk(KERN_ALERT "Goodbye, cruel world\n"); } gcc -O2 -Wall -DMODULE -D__KERNEL__ -I/usr/src/kernels/2.6.18-1.2798.fc6-i586/include -c wtfire.c -o wtfire.o In file included from /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/asm/thread_info.h:16, from /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/thread_info.h:21, from /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/preempt.h:9, from /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/spinlock.h:49, from /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/capability.h:45, from /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/sched.h:44, from /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/module.h:9, from wtfire.c:2: /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/asm/processor.h:80: 错误:‘CONFIG_X86_L1_CACHE_SHIFT’ 未声明 (不在函数 内) /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/asm/processor.h:80: 错误:要求的对齐边界不是常量 在包含自 /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/sched.h:49 的文件中, 从 /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/module.h:9, 从 wtfire.c:2: /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/jiffies.h:33:3: 错误:#error You lose. /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/jiffies.h:210:31: 错误:#if 中用零做除数 /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/jiffies.h:210:31: 错误:#if 中用零做除数 /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/jiffies.h:210:31: 错误:#if 中用零做除数 /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/jiffies.h:210:31: 错误:#if 中用零做除数 对不起,刚才发错了 我为什么就有这么多错,我用的是2.6.18 的核心  | 
	|
| 
			 16楼# 
								发布于:2007-07-07 21:40				
			
					太好了,我也买了这本书,不过还没有到呢				 
							 | 
	|
| 
			 17楼# 
								发布于:2007-07-11 10:10				
			
					好 
							谢谢LZ  | 
	|
| 
			 18楼# 
								发布于:2007-07-11 21:54				
			
					我用同样的方法怎么就编译不行呢,刚入道的,请多多赐教呀。 
							gcc -O2 -Wall -DMODULE -D__KERNEL__ -I/usr/src/linux/include/ -c fire.c -o fire.o fire.c:1:24: 错误:linux/init.h:没有那个文件或目录 在包含自 fire.c:2 的文件中: /usr/include/linux/module.h:10:28: 错误:linux/spinlock.h:没有那个文件或目录 /usr/include/linux/module.h:11:24: 错误:linux/list.h:没有那个文件或目录 /usr/include/linux/module.h:13:28: 错误:linux/compiler.h:没有那个文件或目录 /usr/include/linux/module.h:14:25: 错误:linux/cache.h:没有那个文件或目录 /usr/include/linux/module.h:15:24: 错误:linux/kmod.h:没有那个文件或目录 /usr/include/linux/module.h:17:29: 错误:linux/stringify.h:没有那个文件或目录 /usr/include/linux/module.h:18:27: 错误:linux/kobject.h:没有那个文件或目录 /usr/include/linux/module.h:19:31: 错误:linux/moduleparam.h:没有那个文件或目录 /usr/include/linux/module.h:20:23: 错误:asm/local.h:没有那个文件或目录 /usr/include/linux/module.h:22:24: 错误:asm/module.h:没有那个文件或目录 In file included from fire.c:2: /usr/include/linux/module.h:49: 错误:字段 ‘attr’ 的类型不完全 /usr/include/linux/module.h:60: 错误:字段 ‘kobj’ 的类型不完全 fire.c:3: 错误:expected ‘)’ before string constant fire.c: 在函数 ‘hello_init’ 中: fire.c:6: 警告:隐式声明函数 ‘printk’ fire.c:6: 错误:‘KERN_ALERT’ 未声明 (在此函数内第一次使用) fire.c:6: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其 fire.c:6: 错误:所在的函数内只报告一次。) fire.c:6: 错误:expected ‘)’ before string constant fire.c: 在函数 ‘hello_exit’ 中: fire.c:11: 错误:‘KERN_ALERT’ 未声明 (在此函数内第一次使用) fire.c:11: 错误:expected ‘)’ before string constant  | 
	|
| 
			 19楼# 
								发布于:2007-07-13 19:20				
			
					duoxie ,3q				 
							 | 
	|
上一页
下一页
 
			
			
						
			
			
						
			
		
							
				
				
				
 下了一份,,,linux的驱动也挺有意思的,,,,