linux下xinput怎么使用
来源:亿速云
时间:2024-04-12 23:54:29 216浏览 收藏
大家好,今天本人给大家带来文章《linux下xinput怎么使用》,文中内容主要涉及到,如果你对文章方面的知识点感兴趣,那就请各位朋友继续看下去吧~希望能真正帮到你们,谢谢!
在linux中,xinput是xorg中的一个工具,是用来配置和测试X输入设备的工具,包括但不限于键盘、鼠标等。直接键入xinput或者跟上list参数,就会列出本机所有输入设备,包括名称、ID、层级;而使用“xinput list-props”命令可列出某个设备的详细信息,后接参数为设备ID。
xinput是Linux下的一款配置测试X输入设备的神器,具有以下功能(我们将会用到的)
xinput (list) : 直接键入xinput或者跟上list参数,就会列出本机所有输入设备,包括名称、ID、层级
xinput list –id-only : 仅仅列出设备ID(序号,每次开机都可能改变)
xinput map-to-output : 将输入设备映射到输出,比如将触屏映射到某个屏幕
xinput list-props : 列出某个设备的详细信息,后接参数为设备ID。
首先使用:
xinput list
查看设备列表:
可以看到id=12的就是触摸板设备,使用
xinput list-props 12
查看设备的详细信息:
把其中的Device Enabled设置为0即可禁用:
xinput set-prop 12 'Device Enabled' 0
或者使用Device Enabled后面的数字也可以禁用:
xinput set-prop 12 154 0
启用进行相反的处理即可,设置为1:
xinput set-prop 12 'Device Enabled' 1 # 或 xinput set-prop 12 154 1
Linux下无Makefile编译xinput
xinput是xorg中的一个工具,用来设置输入设备匹配屏幕,编译它是为了更方便调用里面的功能。
源码内有configure可以生成Makefile,但由于所用Linux版本的安装源失效,无法补齐依赖包(yum install 失效),也就不能生成makefile了。现找到一份类似版本的源码,能从中提取所需要的东西。
直接用gcc编译源文件 *.c
会提示找不到一些头文件,比如<X11/extensions/Xinerama.h>可以从libXinerame包中提取
未知的类型名‘XIDeviceInfo’
缺少宏定义导致的头文件选择错误,可在编译命令中指定 gcc -DHAVE_XI2
VERSION 未声明
需要一个宏定义,但不能在命令行中指定了,在xinput.h中增加
#ifndef VERSION #define VERSION "xinput 1.6.2a" #endif
‘XineramaQueryExtension’未定义的引用
有一些库文件需要链接,比如 -lXinerama
cannot find -lXinerama
查看lib64路径中是否存在正确的库文件或者链接,so结尾才行
sudo ln -s /lib64/libXinerama.so.1 /lib64/libXinerama.so
正确安装软件包应该生成 *.pc 文件
configure 检测的是pc文件,它根据PC文件中的依赖关系来生成makefile
prefix=/usr exec_prefix=/usr libdir=/usr/lib64 includedir=/usr/include targets=x11 gtk_binary_version=3.14.13 gtk_host=x86_64 Name: GTK+ Description: GTK+ Graphical UI Library Version: 3.14.13 Requires: gdk-3.0 atk cairo Requires.private: pango cairo gdk-pixbuf2 atk Libs: -L${libdir} -lgtk-3 Cflags: -I${includedir}/gtk
summary
gcc *.c -DHAVE_XI2 -lX11 -lXrandr -lXi -lXinerama
今天带大家了解了的相关知识,希望对你有所帮助;关于文章的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
500 收藏
-
370 收藏
-
479 收藏
-
193 收藏
-
411 收藏
-
359 收藏
-
450 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 507次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习