編譯工具:arm-linux-gcc 4.3.2
編譯目標:tslib1.4
(1)安裝 arm-linux-gcc 4.3.2 ,請參照 http://www.linuxidc.com/Linux/2012-03/56658.htm
(2)將tslib-1.4.tar.gz解壓到任一目錄
(3)進入tslib目錄 cd tslib
相關閱讀:Ubuntu 10.10下Mini2440 tslib1.4移植 http://www.linuxidc.com/Linux/2011-04/34348.htm
由於tiny6410的一線觸摸,所以需要改程序,照別人的:
打開tslib/plugins/input-raw.c
把其中的ts_input_read 函數改成如下:
(4)安裝庫支持:
sudo apt-get install autoconf automake libtool
(5)export PREFIX=/opt/tslib 設置目標位置
(6)./autogen.sh 用於生成configure腳本
(7)echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache 產生一個cache文件arm-linux.cache,欺騙configure
(8)CC=arm-linux-gcc ./configure --host=arm-linux --prefix=$PREFIX --cache-file=arm-linux.cache
(9)make
(10)make install
編譯成功後在目標位置產生/bin、/etc、/include、/lib 4個文件夾
(11)修改/opt/tslib/etc/ts.conf 文件,刪除其中內容,改為
module_raw input
module pthres pmin=1
module variance delta=30
module dejitter delta=100
module linear
第一行是tslib從linux的輸入設備讀取數據時需要用到的模塊,這裡指定的模塊為input,具體需要用到哪個模塊,需要參考其他數據。
第二行的pthres為Tslib提供的觸摸屏靈敏度門檻插件。
第三行的variance為Tslib提供的觸摸屏濾波算法插件。
第四行的dejitter為Tslib 提供的觸摸屏去噪算法插件。
第五行linear為Tslib提供的觸摸屏坐標變換插件。
(12)將/opt下的tslib文件夾拷貝到arm文件系統的/opt下
(13)設置環境變量腳本tslib.sh
(14)啟動arm板,命令行下執行腳本
source tslib.sh
(15)校准觸摸屏
cd /opt/tslib/bin
./ts_calibrate
會出現校准畫面,完成後生成pointercal 文件
(16)鏈接
ln -s /opt/tslib/etc/pointercal /etc/pointercal
至此,tslib1.4移植完成