2008/11/29

[軟體] 用 Linux Kernel 的 Kbuild 來建立一個選單

在 Linux 上面要 make kernel 並不是一件很簡單的事情,常常我們都要調查一堆的選項才能很順利的「開始」 config 核心,然而這只是麻煩的開頭而已,接著下來,我們就要對數以千計的選項勾選,打上 yes or no , include or module 的選擇。這些個選擇題如果是在 console 底下用一個一個問的話,大概可以問上一兩個小時沒有問題,還好 Linux Kernel 的開發小組搞了一個 KBuild 的小玩意兒來玩,讓我們可以很快又很簡單的像下面的圖片裡面一樣,快速達成 config 的目標。



不過,這麼好玩的東西,怎麼會只能在 Kernel 底下使用呢?當然也就有人開始想要把這個小玩意兒套用在別的工作上面,像是一堆模組在 console 底下可以套用選擇的時候,如果有這樣的東西可以拿出來玩,該有多好?

筆者接著要介紹的,就是 Kbuild 的一個簡單的範例:
KBuild 需要的部份主要有三個部份:
* script/ # 主要軟體
* Config.in # 設定檔
* Makefile # make 文件檔

Makefile 的部份:
KCONFIG := script/kconfig
CONFIG_IN := Config.in

all: .config

.config:
$(MAKE) menuconfig

$(KCONFIG)/mconf:
$(MAKE) -C $(KCONFIG)

menuconfig: $(KCONFIG)/mconf
@$(KCONFIG)/mconf $(CONFIG_IN)


Config.in:
# General Options
menu "General Options"

config DL_DIR
string "Packages Directory"
default "$(PWD)/dl"
endmenu


再來就是把 kernel 裡面的 script 目錄打包過來就都到齊了。

config 模組再來要使用,就可以很簡單的用 make 來解決。
張貼留言

[Windows] 好用的小工具: AutoHotKey

做為一個 Linux 的愛好者,轉移到 Windows 上面的時候,往往難以適應 Windows 調整快捷鍵的方式,所以 google 了一下,結果發現很多人愛用的 "Auto Hot key"。不多說,就來給一個範例說明如何使用 Auto Hot key 來...