本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。
xinput是什么
(資料圖片僅供參考)
xinput是用來配置和測試X輸入設(shè)備的工具,包括但不限于鍵盤,鼠標(biāo)等,在這里用作關(guān)閉觸摸板,基于同樣的道理可以關(guān)閉鍵盤等。
xinput是Linux下的一款配置測試X輸入設(shè)備的神器,具有以下功能(我們將會(huì)用到的)
xinput (list) : 直接鍵入xinput或者跟上list參數(shù),就會(huì)列出本機(jī)所有輸入設(shè)備,包括名稱、ID、層級(jí)
xinput list –id-only : 僅僅列出設(shè)備ID(序號(hào),每次開機(jī)都可能改變)
xinput map-to-output : 將輸入設(shè)備映射到輸出,比如將觸屏映射到某個(gè)屏幕
xinput list-props : 列出某個(gè)設(shè)備的詳細(xì)信息,后接參數(shù)為設(shè)備ID。
首先使用:
xinput list
查看設(shè)備列表:
可以看到id=12的就是觸摸板設(shè)備,使用
xinput list-props 12
查看設(shè)備的詳細(xì)信息:
把其中的Device Enabled設(shè)置為0即可禁用:
xinput set-prop 12 "Device Enabled" 0
或者使用Device Enabled后面的數(shù)字也可以禁用:
xinput set-prop 12 154 0
啟用進(jìn)行相反的處理即可,設(shè)置為1:
xinput set-prop 12 "Device Enabled" 1# 或xinput set-prop 12 154 1
Linux下無Makefile編譯xinput
xinput是xorg中的一個(gè)工具,用來設(shè)置輸入設(shè)備匹配屏幕,編譯它是為了更方便調(diào)用里面的功能。
源碼內(nèi)有configure可以生成Makefile,但由于所用Linux版本的安裝源失效,無法補(bǔ)齊依賴包(yum install 失效),也就不能生成makefile了?,F(xiàn)找到一份類似版本的源碼,能從中提取所需要的東西。
直接用gcc編譯源文件 *.c
會(huì)提示找不到一些頭文件,比如<X11/extensions/Xinerama.h>可以從libXinerame包中提取
未知的類型名‘XIDeviceInfo’
缺少宏定義導(dǎo)致的頭文件選擇錯(cuò)誤,可在編譯命令中指定 gcc -DHAVE_XI2
VERSION 未聲明
需要一個(gè)宏定義,但不能在命令行中指定了,在xinput.h中增加
#ifndef VERSION#define VERSION "xinput 1.6.2a"#endif
‘XineramaQueryExtension’未定義的引用
有一些庫文件需要鏈接,比如 -lXinerama
cannot find -lXinerama
查看lib64路徑中是否存在正確的庫文件或者鏈接,so結(jié)尾才行
sudo ln -s /lib64/libXinerama.so.1 /lib64/libXinerama.so
正確安裝軟件包應(yīng)該生成 *.pc 文件
configure 檢測的是pc文件,它根據(jù)PC文件中的依賴關(guān)系來生成makefile
prefix=/usrexec_prefix=/usrlibdir=/usr/lib64includedir=/usr/includetargets=x11gtk_binary_version=3.14.13gtk_host=x86_64Name: GTK+Description: GTK+ Graphical UI LibraryVersion: 3.14.13Requires: gdk-3.0 atk cairoRequires.private: pango cairo gdk-pixbuf2 atkLibs: -L${libdir} -lgtk-3Cflags: -I${includedir}/gtksummary
gcc *.c -DHAVE_XI2 -lX11 -lXrandr -lXi -lXinerama
相關(guān)推薦:《Linux視頻教程》
以上就是linux下xinput是什么的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
關(guān)鍵詞: