https://blog.csdn.net/flfihpv259/article/details/51496959
移行手順:
1.ダウンロードtslib
ダウンロードポイントIは、入力されたかのgitコマンドを使用してダウンロード:
gitの住所- https://github.com/kergoth/tslib.git
tslibからダウンロードディレクトリまたは抽出物2.
3.いくつかのコマンドを実行します。
anzyelay@ubuntu:tslib$ ./autogen.sh //得到configure
anzyelay@ubuntu:tslib$ ./configure --host=arm-linux --prefix=安装目录 CC=交叉编译器绝对路径
anzyelay@ubuntu:tslib$ make
anzyelay@ubuntu:tslib$ sudo make install
anzyelay@ubuntu:安装目录$ ls //成功后在安装目录有如下文件
bin etc include lib
- 1
- 2
- 3
- 4
- 5
- 6
- 7
いいえ、絶対パスはいくつかの問題から、絶対パスでなければなりません。
4.対応するルートファイルシステムディレクトリにライブラリと実行可能プログラムを使用。
二つの方法:
ここで - >「/」は、安定した移植後のため、このtslib、ファイルシステムではなく、お使いのPCののルートディレクトリのルートディレクトリを参照した後、
- 図書館:> / libに - 除去pkgconfigディレクトリtslib / libに/ファイル以外の他のすべてのファイル
- プログラム:tslibの下で/ binにファイルのすべてのテキストについて - > / binに
- 構成:tslibの/ etc / ts.confファイル - > /etc/ts.conf
あなたはまた、ルートディレクトリ内のディレクトリにディレクトリ全体を選択することができますが、設定環境変数に対応する変更を行うには、移植の始めのための誤り訂正時、
5.変更したファイルシステム構成ファイルと環境変数を追加します
ts.conf:開発ボード上のタッチスクリーン情報によっては、それを以下の裁判を受ける権利をここにキャンセルコメントをキャンセル。
#コメントを解除あなたはシャープのザウルスSL-C700 / C750 / C760 / C860使用している場合
module_rawコーギー
/ etc / profileをでは、独自のファイルシステムに応じて次の設定を追加します:
ts.confのEVENT0はINPUT module_rawから選択する場合、輸出TSLIB_TSDEVICE =は/ dev / TS0#ここで選択
ts.conf /エクスポートTSLIB_CONFFILE =の/ etc
エクスポートTSLIB_PLUGINDIR = / libに/ TS
ここでエクスポートTSLIB_CALIBFILE = / TEMP /#校正pointercalですファイルが変更、場所を保存する
エクスポートTSLIB_CONSOLEDEVICEを=なし
エクスポートTSLIB_FBDEVICE =は/ dev / FB0
この方法は、ステップ2である場合は、次のような構成です。
輸出TS_ROOT =は/ usr / local / tslib #tslib 移動するファイルシステムディレクトリに
エクスポートTSLIB_TSDEVICE =は/ dev / INPUT / TS0
エクスポートTSLIB_CONFFILE = $ ts.conf TS_ROOTの/ etc /
エクスポートTSLIB_PLUGINDIR = $ TS_ROOT / libに/ TS
輸出TSLIB_CALIBFILE = / TEMP / pointercal
エクスポートTSLIB_CONSOLEDEVICE =なし
エクスポートTSLIB_FBDEVICE =は/ dev / FB0
エクスポートPATH = $ TS_ROOT / binに:$ PATH
輸出LD_LIBRARY_PATH = $ TS_ROOT / libに:$ LD_LIBRARY_PATH
これらの設定は意味を参照してくださいtslib / READMEは次のとおりです。
42 43 TSLIB_TSDEVICE TSデバイスファイル名。44
デフォルト(非inputapi):の/ dev /タッチスクリーン/ ucb1x00 45
デフォルト(inputapi):の/ dev /入力/ EVENT0 46 TSLIB_CALIBFILE
較正ファイル。47デフォルト:
$ {SYSCONFDIR} / pointercal 48 TSLIB_CONFFILE設定ファイル。49
デフォルト:$ 50 TSLIB_PLUGINDIRプラグイン/ts.conf {SYSCONFDIR}
ディレクトリ。51デフォルト:$ {DATADIR} /プラグイン52
TSLIB_CONSOLEDEVICEコンソール装置。53デフォルト:
は/ dev / ttyの54 TSLIB_FBDEVICEフレームバッファデバイス。55
デフォルト:は/ dev / FB0
6.実行(Do)ts_calibrate補正
[ルート@ BST:/]#ts_calibrate
XRES = 480、yresは= 272は
26個のサンプルを取っ...
トップ左:X = 162、Y 209 =
30個のサンプルを取っ...
トップ右:X = 866、Y = 210
... 31個のサンプルを取った
ボット右:X = 871、Y = 581は、
31個のサンプルを取っ...
ボットは、左:X = 155、Y = 584は
24のサンプル...かかった
センター:X = 515、Y = 395の
-35.559814 0.535173 0.001486
-46.847839 0.000662 0.461112
較正定数:-2330448 35073 97 -3070220 43 30219 65536
第二の問題に遭遇概要:
./autogen.shを実装するには1.が表示されます。
./autogen.sh: 3: autoreconf: not found
何のインストールautomakeのツールが存在しないための理由は、次のコマンドをインストールします。
sudo apt-get install autoconf automake libtool
間違いがあります。2.実行(Do)は./configure:
erro1:
libtoolは:インストール:エラー:ディレクトリは終了しないように`linear.la」をインストールすることはできませんは/ usr / local / lib / TSで
:作る[2] * [インストール-pluginexecLTLIBRARIES]エラー1
メイク[2]:`ディレクトリを残して/ホーム/ anzyelay /デスクトップ/腕/ tslib /プラグイン
メイク[1]:* [インストール-AM]をエラー2
メイク[1]:ディレクトリ`/ホーム/ anzyelay /デスクトップ/腕/ tslib /プラグインのままに
メイクを:* [インストール-recursive]エラー1
それぞれに./configureその後、メイクを実行した後、エラー処理は、きれいにする必要があります。
ERROR2:
libtoolは:インストールします(CD /ホーム/ anzyelay /デスクトップ/腕/ tslib /プラグイン; / binに/ bashを/ホーム/ anzyelay /デスクトップ/腕/ tslib / libtoolを-tag CC -mode =再リンクアームのlinux-gccの-DTS_POINTERCAL = \」/ホーム/ anzyelay /デスクトップ/腕/ tslib_installの/ etc / pointercal \」-DTSLIB_INTERNAL -fvisibility =隠さ-DGCC_HASCLASSVISIBILITY -O2 -Wall -W -module -avoid-バージョン-o linear.la -rpath /ホーム/ anzyelay /デスクトップ/腕/ tslib_install / libに/ TS linear.lo ../src/libts.la)
のlibtool:再リンク:腕のlinux-gccの-shared -fPIC -DPIC .LIBS / linear.o -Wl、-rpath -Wl、 /ホーム/ anzyelay /デスクトップ/腕/ tslib_install / libに-L /ホーム/ anzyelay /デスクトップ/腕/ tslib_install / libに-lts -O2 -Wl、-soname -Wl、linear.so -o .LIBS / linear.so
/ホーム/ anzyelay /デスクトップ/腕/ tslib / libtoolを:行8968:腕のlinux-gccの:コマンドが見つかりません。
libtoolは:インストール:エラー:上記のコマンドを使用して再リンク`linear.laを」はインストール前に
行うこと[2]:* [インストール-pluginexecLTLIBRARIES]エラー1
次のようにCCを指定するには、絶対アドレス、または第三次のエラーを使用する必要があります。
anzyelay@ubuntu:~/Desktop/arm/tslib$ ./configure --host=arm-linux --prefix=/home/anzyelay/Desktop/arm/myrootfs/usr/local/tslib CC=/usr/local/arm/4.4.3/bin/arm-linux-gcc
- 1
- 2
3.メイク出たlibtoolをインストール:インストール:エラー:再リンク `linear.la」を上記のコマンドで
上記構成では、すべての方法を確認し、[OK]が、次のようにエラーmakeがインストールします。
```
/bin/bash ../libtool --mode=install /usr/bin/install -c linear.la dejitter.la variance.la pthres.la ucb1x00.la corgi.la collie.la h3600.la mk712.la arctic2.la tatung.la dmc.la linear_h2200.la input.la galax.la touchkit.la '/home/anzyelay/Desktop/arm/tslib/build/lib/ts'
libtool: install: warning: relinking `linear.la'
libtool: install: (cd /home/anzyelay/Desktop/arm/tslib/plugins; /bin/bash /home/anzyelay/Desktop/arm/tslib/libtool --tag CC --mode=relink arm-linux-gnueabi-gcc -DTS_POINTERCAL=\"/home/anzyelay/Desktop/arm/tslib/build/etc/pointercal\" -DTSLIB_INTERNAL -fvisibility=hidden -DGCC_HASCLASSVISIBILITY -O2 -Wall -W -module -avoid-version -o linear.la -rpath /home/anzyelay/Desktop/arm/tslib/build/lib/ts linear.lo ../src/libts.la )
libtool: relink: arm-linux-gnueabi-gcc -shared -fPIC -DPIC .libs/linear.o -Wl,-rpath -Wl,/home/anzyelay/Desktop/arm/tslib/build/lib -L/home/anzyelay/Desktop/arm/tslib/build/lib -lts -O2 -Wl,-soname -Wl,linear.so -o .libs/linear.so
/home/anzyelay/Desktop/arm/tslib/libtool: line 8968: arm-linux-gnueabi-gcc: command not found
libtool: install: error: relink `linear.la' with the above command before installing it
make[2]: *** [install-pluginexecLTLIBRARIES] Error 1
make[2]: Leaving directory `/home/anzyelay/Desktop/arm/tslib/plugins'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/home/anzyelay/Desktop/arm/tslib/plugins'
make: *** [install-recursive] Error 1
```
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
CC =以下のように絶対的な用語は、そのアドレスを変更する、
ときにエラー
anzyelay@ubuntu:tslib$ ./configure --host=arm-linux --prefix=`pwd`/build CC=arm-linux-gcc
- 1
- 2
正しいです
anzyelay@ubuntu:tslib$ ./configure --host=arm-linux --prefix=`pwd`/build CC=/usr/local/arm/4.9.4/bin/arm-linux-gcc
- 1
- 2
私は良い仕事コンパイラ環境を持って、腕のlinux-gccのを見つけるが、それは間違っていることができますが、絶対アドレスを使用している場合、それはOKです。
次のエラーts_calibrateを実行4.
ERROR1は:
/bin/ts_calibrate: line 1: syntax error: unexpected end of file
x86の下のファイルは実際にはファイルではなく、腕を発見しました。
anzyelay@ubuntu:myrootfs$ file bin/ts_calibrate
bin/ts_calibrate: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0xb79294591df01693dcc3ae349c4995c59a527f80, not stripped
- 1
- 2
PATH変数は、後にPCの回復を見つけ、/ etc / profileをが正常で、次の再ランソースは/ etc / profileは、通常のPATHを参照してください閲覧、須藤秀が復元された後に戻ってオンにする必要があります。そして、通常のインストールを再コンパイル:
anzyelay@ubuntu:myrootfs$ file usr/local/tslib/bin/ts_calibrate
usr/local/tslib/bin/ts_calibrate: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, not stripped
- 1
- 2
- 3
ERROR2:
[ルート@ BST:/]#ts_calibrate
ts_calibrate:エラー読み込み中に、共有ライブラリ:libts-1.0.so.0:間違ったELFクラス:ELFCLASS64
ライブラリはtslib / libに/ libts-1.0.so.0が下/ libに移動した場合、それは次のようにライブラリ検索パスを指定する必要がありますディレクトリ全体のtslibをシフトさせる方法があるかどうかを確認することはありませんので、これは次のようになります。
export TS_ROOT=/usr/local/tslib
export LD_LIBRARY_PATH=$TS_ROOT/lib:$LD_LIBRARY_PATH
error3:
[ルート@ BST:/]#ts_calibrate
XRES = 480、yres = 272
ts_read:無効な引数
次のようにコンフィギュレーションファイルTSLIB_TSDEVICE変数の変化があるので、私は、ts.confモジュールは「module_rawコーギー」で選択したので、
export TSLIB_TSDEVICE=/dev/input/event0
修改为
export TSLIB_TSDEVICE=/dev/input/ts0
- 1
- 2
- 3
イン深さ問い合わせは、以下の対応関係が見つかりました:
は/ dev / INPUT / EVENT0 < - > INPUT module_raw
の/ dev / INPUT / TS0 - module_rawコーギーを<>
、対応する構成プロファイルts.conf書き込み限り、どちらも可能です。
エラー4
root@~# ts_calibrate
xres = 800, yres = 480
tslib: Selected device is not a touchscreen (must support ABS and KEY event types)
Took 3 samples...
Top left : X = 1993966148 Y = 20672392
Took 3 samples...
Top right : X = 1993966148 Y = 20672392
Took 3 samples...
Bot right : X = 1993966148 Y = 20672392
Took 3 samples...
Bot left : X = 1993966148 Y = 20672392
Took 3 samples...
Center : X = 1993966148 Y = 20672392
0.348604 -0.002357 0.227393
-0.214578 0.004819 -0.464815
Calibration constants: 22846 -154 14902 -14062 315 -30462 65536
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
選択したデバイスから、何かがうまくいか確認するためにタッチスクリーンTSLIB_TSDEVICE文ではありません、次のチェック:
export TSLIB_TSDEVICE=/dev/input/event0
- 1
次のデバイスを見ます
root@/etc# cat /proc/bus/input/devices
I: Bus=0019 Vendor=0000 Product=0000 Version=0000
N: Name="20cc000.snvs-pwrkey"
P: Phys=snvs-pwrkey/input0
S: Sysfs=/devices/soc0/soc.0/2000000.aips-bus/20cc000.snvs-pwrkey/input/input0
U: Uniq=
H: Handlers=kbd event0 evbug
B: PROP=0
B: EV=3
B: KEY=100000 0 0 0
I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="iMX6UL TouchScreen Controller"
P: Phys=
S: Sysfs=/devices/virtual/input/input1
U: Uniq=
H: Handlers=mouse0 event1 evbug
B: PROP=0
B: EV=b
B: KEY=400 0 0 0 0 0 0 0 0 0 0
B: ABS=3
I: Bus=0003 Vendor=0c45 Product=6340 Version=0000
N: Name="USB 2.0 Camera"
P: Phys=usb-ci_hdrc.1-1.1/button
S: Sysfs=/devices/soc0/soc.0/2100000.aips-bus/2184200.usb/ci_hdrc.1/usb1/1-1/1-1.1/1-1.1:1.0/input/input3
U: Uniq=
H: Handlers=kbd event2 evbug
B: PROP=0
B: EV=3
B: KEY=100000 0 0 0 0 0 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
タッチスクリーンは再びts_calibrateを実行し、再起動を修正し、EVENT1をする必要があります