線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:3818
推到 Plurk!
推到 Facebook!

自行撰寫模組

尚未結案
GN_Bernie
一般會員


發表:3
回覆:0
積分:0
註冊:2013-11-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2014-01-29 23:18:20 IP:114.25.xxx.xxx 訂閱

[code cpp]
#include
#include
#include

MODULE_DESCRIPTION("Hello World !!");
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");

}

module_init(hello_init);
module_exit(hello_exit);
[/code]
編譯出Hello.ko檔
接著 insmod ./Hello.ko
出現insmod: error inserting './Hello.ko': -1 Unknown symbol in module
直覺是Hello.c裡面有些東西核心無法辨識?
我是想在自己的電腦上作業系統 ubuntu (非arm)核心版本為 3.8.0-29-generic
查看 modinfo vermagic 版本也是 3.8.0-29-generic
載入自己寫的模組。請問可能是哪有問題呢...? 謝謝。

1 是否在編譯模組時,核心原始碼也需要編譯?
2 我查詢了 dmesg 出現 dmesg [ 1633.919094] Hello: Unknown symbol mcount [er0],
上網查可能說 gcc編譯器不對,我現在的編譯器為4.4X版本

LDD聖經版連 Hello.c 範例程式都不完全, include還是我加上去的
拜託大大給我提示>"<

編輯記錄
GN_Bernie 重新編輯於 2014-01-29 23:20:44, 註解 無‧
系統時間:2024-11-10 21:12:39
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!