發表文章

目前顯示的是 1月, 2015的文章

linux fuse-exfat於嵌入式系統的設定

要讓linux支援exfat格式是頗麻煩的一件事 一開始先試用nofuse-exfat 但裡面所支援的readdir function在某些版本的linux kernel無法正常作業 導致其他程式要讀取隨身碟裡的檔案時無法顯示 因為我們也沒辦法隨便換kernel版本,所以就放棄使用nofuse-exfat 不能使用nofuse-exfat,那只好使用fuse-exfat 但是fuse-exfat比較複雜 需要至少兩包東西: 1.fuse-2.9.3 2.fuse-exfat-1.1.0 3.exfat-utils-1.1.1(這個應該不一定需要,但我還是放進去了) 於是乎就開始compile這三包東西了 1.fuse-2.9.3 這個算是比較簡單的了 只要將cross compile環境設定好應該就OK了 我自己寫了一個簡單的script來跑 ./configure --prefix=$PWD/release --host=`/opt/toolchains/armv7-marvell-linux-gnueabi-softfp_i686/bin/arm-marvell-linux-gnueabi-gcc -dumpmachine` --enable-lib --enable-util --enable-example --exec-prefix=$PWD/release make clean make mkdir release mkdir release/lib cp lib/.libs/libfuse* release/lib 因為我是在marvell 78460上跑,所以使用的gcc是marvell版本的 請自行代換 compile之後在fuse-2.9.3/lib/.libs裡會出現libfuse.so.2.9.3以及相關的link檔 這就表示成功啦~ 到時fuse-exfat會需要reference這個lib以及include檔案夾內的東西 2.fuse-exfat-1.1.0 這個東西頗麻煩的 因為它是使用scons來compile的,而非一般常用的Makefile 所以請先下載scons 接下來要修改不少東西 (...

busybox bootchartd使用方法

花了一點工夫才知道要怎樣使用busybox底下的bootchartd 這是一個評估開機流程的圖形化工具 可以幫助最佳化開機的好幫手 1.首先,要看自己的linux system是利用甚麼機制開機的    可參考 http://www.bootchart.org/docs.html    我們自己的system可設定在/etc/init/rcS的開頭加上一行/sbin/bootchartd start 2.完成後的bootlog.tgz就可以拿到linux的機器上轉換成PNG檔    不過事情沒這麼簡單    使用bootchart bootlog.tgz轉換後,出現這樣的error訊息: File "/usr/lib/pymodules/python2.7/pybootchartgui/draw.py", line 340, in draw_header     txt = headertitle + ': ' + mangle(headers.get(headerkey)) TypeError: cannot concatenate 'str' and 'NoneType' objects    此時有搜尋到一個解決方法: https://books.google.com.tw/books?id=WuktAgAAQBAJ&pg=PT109&lpg=PT109&dq=busybox+bootchartd&source=bl&ots=FGwBHsCpty&sig=E6x1JH5vLzhEzq41uBHYbfiU-_w&hl=zh-TW&sa=X&ei=2W6jVNWIM4Xp8AXf04HQBA&ved=0CFsQ6AEwCA#v=onepage&q=busybox%20bootchartd&f=false   大意就是把某幾行程式給mark註解掉 3.事情還沒完,改完後再跑依然出現: File "/usr/lib/pymodules/python2.6/pybootchartgui/draw.py", line ...