LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1522|回复: 4

编译模块输不出结果

[复制链接]
发表于 2008-2-23 09:36:01 | 显示全部楼层 |阅读模式
#include <linux/module.h> //所有模块都需要的头文件
#include <linux/init.h> // init&exit相关宏
MODULE_LICENSE("GPL");
static int __init hello_init (void)
{
    printk("Hello china init\n");
    return 0;
}

static void __exit hello_exit (void)
{
    printk("Hello china exit\n");
}

module_init(hello_init);
module_exit(hello_exit);
程序是这样的,但是当我insmod hello.ko 的时候,没有输入结果,是什么原因的?
发表于 2008-3-1 13:00:58 | 显示全部楼层
是终端上没有输出结果吧,一般内核的输出不会映射到当前的终端上。
输出到那里,好像不同的发行版是有差别的。试试:
  1. # cat /proc/kmsg
复制代码
回复 支持 反对

使用道具 举报

发表于 2008-3-8 19:02:23 | 显示全部楼层
printk()默认的级别在有些系统版本上是不输入到字符界面的,你可以提高printk()输出信息的优先级,eg:  printk("<0> hello world").
回复 支持 反对

使用道具 举报

发表于 2008-3-12 20:12:20 | 显示全部楼层
Post by hollyren;1819139
#include <linux/module.h> //所有模块都需要的头文件
#include <linux/init.h> // init&exit相关宏
MODULE_LICENSE("GPL");
static int __init hello_init (void)
{
    printk("Hello china init\n");
    return 0;
}

static void __exit hello_exit (void)
{
    printk("Hello china exit\n");
}

module_init(hello_init);
module_exit(hello_exit);
程序是这样的,但是当我insmod hello.ko 的时候,没有输入结果,是什么原因的?


dmesg 最后那几行就是你想要的
回复 支持 反对

使用道具 举报

发表于 2008-3-12 20:13:18 | 显示全部楼层
Sorry. 重发了。

dmesg 最后那几行就是你想要的,或者你直接到/var/log/dmesg看结果
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表