一、實驗環境
硬體: jz2440開發板
核心版本: linux-2.6.22.6
交叉工具鏈: gcc-3.4.5-glibc-2.3.6
tslib版本: tslib-1.4
二、安裝
1) 執行tslib自帶的腳步檔案設定環境
./autogen.sh
2) 產生乙個cache檔案arm-linux.cache,欺騙configure
echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache //0是數字零
3) 建立乙個目錄用於存放tslib的一下安裝檔案,可以根據需求自行建立,然後用--prefix指定
(作者在tslib當前目錄下建立了乙個release目錄)
mkdir release
./configure --host=arm-linux --cache-file=arm-linux.cache --prefix=$(pwd)/release
4) 編譯
make
雖然有了第二步的欺騙,但是還是沒有欺騙過configre,最終還是出現了錯誤如下圖:
沒辦法了只有用恨招了,直接把頂層目錄下的config.h.in中的以下語句給遮蔽了
/* define to rpl_malloc if the replacement function should be used. */
#undef malloc
然後重新編譯就ok了
5) 安裝
make install
安裝完後就可以在release目錄下看到以下內容
6) 將release目錄下的內容拷貝到檔案系統中
cp * -rfd /nfs/sysfs/fs_s3c2440
三、 使用
由於tslib依賴於觸控螢幕和螢幕所以在測試tslib之前的先安裝觸控螢幕和lcd螢幕的驅動,同時還得修改和設定
一些環境變數
1) 修改
將/etc/ts.conf中的第一行的「#」和空格去掉即:
# module_raw input 改為
module_raw input
2) 匯出環境變數
環境變數的匯出有兩中方式,一種是等系統起來後直接在終端中輸入一下各個命令回車,然後在執行測試程式,但是這種
方式只能等到系統起來之後,如果想在系統啟動時也將測試程式啟動起來就得使用第二種方式。這種方式是將以下內容寫
入到乙個shell腳步中,系統啟動時呼叫shell指令碼來匯出這些變數。注意shell的呼叫要使用 ". 或 source"方式。
export tslib_tsdevice=/dev/event0 //指定觸控螢幕裝置
export tslib_calibfile=/etc/pointercal //指定校準檔案存放路徑
export tslib_conffile=/etc/ts.conf //指定tslib配置檔案的位置
export tslib_plugindir=/lib/ts //指定觸控螢幕外掛程式的位置
export tslib_consoledevice=none //設定控制台裝置為none,否則預設為/dev/tty
export tslib_fbdevice=/dev/fb0 //指定幀快取裝置
3) 執行測試用例
./ts_test
./ts_calibrate
tslib1 4移植與使用
一.首先在ubuntu中安裝以下工具包 sudo apt get install autoconf sudo apt get install automake sudo apt get install libtool 二.編譯 tar xzf tslib 1.4.tar.gz cd tslib ex...
tslib 1 4的安裝與移植
一 移植環境 cpu s3c2440 sdram hy57v561620ftp h nor flash sst 39vf1601 2m nand flash k9f1g08u0b 128m 網絡卡晶元 dm9000ep 二 部落格位址 如有錯誤,歡迎指正。三 具體方法 之前把u boot的移植做完之...
tslib 1 4的安裝與移植
分類 linux 2 解壓安裝tslib tar zxvf tslib 1.4.tar.gz cd tslib autogen.sh echo ac cv func malloc 0 nonnull yes arm linux.cache configure host arm linux cache...