[技術] 在Makefile中加入Check file size的機制

Written on 9:11 下午 by Yu Lai

今天在porting新板子的loader,
因為flash memory layout的關係,
整個loader大小才128kb。
而我沒注意到Image Size己經暴了一點,
沒想到flash還是寫成功了,
結果reboot後跑起來果然怪怪的。
連基本的printf都怪怪的,囧~
只能拿JTAG來救了,唉。

於是我想到要在Makefile裡加入檢查檔案大小的機制,
讓make時適時的提醒我檔案大小是否ok?

結果讓我搞了一個快下午還搞不定 @_@,
我試了老半天還是不知該怎麼把bash的if加到Makefile裡。
最後到GNU Makefile仔細的找了找才發現原來是我想錯了,
Makefile裡的command部份其實是呼叫sub shell執行命令,
然後判斷其return value。
所以要加入檢查檔案大小的機制連if都不必用到,
直接用test就可以了。

e.g.

check:
@echo -e "\nCheck redboot.img file size ....."
@test `stat -c %s boot/install/bin/redboot.img` -lt 129792
@echo "Ok."

[技術] 在Wine中存取Serial COM Port

Written on 2:03 上午 by Yu Lai

Wine是一種在類Unix系統上執行Windows程式的軟體,
它可以在Ubuntu上跑一些Windows的程式。

會使用這功能主要是要跑Holux M-1000C附的ezTour,
雖然己成功將GPS配合Google Earth來使用,
但我仍未找出怎麼讀出M-1000C內路徑的方法,
現階段只好先透過Wine來跑囉。

不過ezTour要使用COM Port來存取GPS的資料,
在使用前要先將Wine設定好mapping COM Port,
設定方式是先在 ~/.wine/dosdevices 目錄下建立一個link,
e.g.

# ln -s /dev/rfcomm0 com1

這樣透過Wine開啟的ezTour就可以指定COM1來讀出rfcomm0內的資料啦。