日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]進(jìn)入內(nèi)核源碼所在的路徑/usr/src/linux-2.4中A)make mrproper//清理內(nèi)核源代碼樹,如果是第一次配置內(nèi)核則可以不運(yùn)行//ls .config//驗(yàn)證內(nèi)核配置文件不存在B)make menuconfig//配置內(nèi)核以及內(nèi)核模塊,其實(shí)這里的還

進(jìn)入內(nèi)核源碼所在的路徑/usr/src/linux-2.4中
A)make mrproper//清理內(nèi)核源代碼樹,如果是第一次配置內(nèi)核則可以不運(yùn)行

//ls .config//驗(yàn)證內(nèi)核配置文件不存在
B)make menuconfig//配置內(nèi)核以及內(nèi)核模塊,其實(shí)這里的還可以使用
//(1)make config(交互式問答)
//(2)cp /etc/config-2.4.20-8 .config(通過復(fù)制現(xiàn)有的配置文件而獲?。?/p>

//(3)make oldconfig(通過舊內(nèi)核生成)
//(4)make xconfig(圖形界面下編譯)
//如果要從圖形界面定制內(nèi)核,需要安裝第三張光盤中的tk包。

//這里強(qiáng)烈推薦使用make menuconfig。
//在進(jìn)入內(nèi)核配置菜單之后:
//(1)[*]表示編譯進(jìn)入內(nèi)核——隨系統(tǒng)啟動(dòng)而啟動(dòng)
//(2)[]表示配置項(xiàng)不編譯進(jìn)內(nèi)核
//(3)表示不編譯進(jìn)內(nèi)核,作為內(nèi)核模塊進(jìn)行編
//(4)< >不編譯進(jìn)內(nèi)核也不作為內(nèi)核模塊進(jìn)行編譯
C)make dep//依賴性關(guān)系
D)make bzImage//編譯內(nèi)核核心
E)make modules//編譯內(nèi)核模塊
F)make install//安裝編譯好的新內(nèi)核核心,嵌入式這步省略
G)make modules_install

//安裝內(nèi)核模塊(即便事實(shí)上什么也沒有建構(gòu))。 這會(huì)把內(nèi)核模塊安裝入 /lib/modules/ /kernel/drivers 目錄( KERNELVERSION 是 Makefile 中指定的版本)。在這個(gè)例子里是 /lib/modules/2.4.20-2.47.1custom/kernel/drivers/;

嵌入式的話放在宿主機(jī)的tmp/lib/modules/</kernel/drivers下,確切位置最好看命令行的輸出,開頭有cp的行。

make mrproper后會(huì)徹底改變?cè)瓉淼呐渲?,所以?yáng)初提供的2410linux_src.tar.gz源碼包

解壓后直接make menuconfig,保存配置成一個(gè)配置文件,以后再編譯內(nèi)核時(shí)就可以make mrproper,make menuconfig調(diào)出第一次的配置,在此配置上修改。


在開發(fā)板上輸入

#insmod ctrlboard.o
ctrlboard.o: unresolved symbol devfs_register
ctrlboard.o: unresolved symbol __wake_up
ctrlboard.o: unresolved symbol unregister_chrdev
ctrlboard.o: unresolved symbol register_chrdev
ctrlboard.o: unresolved symbol __arch_copy_to_user
ctrlboard.o: unresolved symbol free_irq
ctrlboard.o: unresolved symbol devfs_unregister
ctrlboard.o: unresolved symbol interruptible_sleep_on
ctrlboard.o: unresolved symbol set_external_irq
ctrlboard.o: unresolved symbol request_irq
ctrlboard.o: unresolved symbol __arch_copy_from_user
ctrlboard.o: unresolved symbol printk
ctrlboard.o: unresolved symbol udelay
出現(xiàn)上面錯(cuò)誤的原因是編譯內(nèi)核的時(shí)候選擇下面這一項(xiàng),這項(xiàng)表示驅(qū)動(dòng)程序版本跟內(nèi)核版本不嚴(yán)格一樣的話,insmod將找不到內(nèi)核函數(shù)
Loadable module support -------->
[ ]set version information on all module symboles

啟用設(shè)備文件系統(tǒng)devfs,在配置內(nèi)核時(shí)選擇

File systems--------------->

[]/dev file system support

#看內(nèi)核導(dǎo)出符號(hào)
cat /proc/ksyms

如果編譯linux2.6.14.1內(nèi)核,則是
make menuconfig
make zImage


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉