Home  >  Article  >  Operation and Maintenance  >  What is xinput under linux

What is xinput under linux

青灯夜游
青灯夜游Original
2023-03-14 09:59:365667browse

In Linux, xinput is a tool in xorg. It is a tool used to configure and test X input devices, including but not limited to keyboard, mouse, etc. Type xinput directly or follow the list parameter, and all input devices of the machine will be listed, including name, ID, and level; and use the "xinput list-props" command to list the detailed information of a device, followed by the parameter ID.

What is xinput under linux

#The operating environment of this tutorial: linux7.3 system, Dell G3 computer.

What is xinput

xinput is a tool used to configure and test X input devices, including but not limited to keyboard, mouse, etc. This is used to close the touchpad. Based on the same principle, you can close the keyboard, etc.

xinput is an artifact for configuring and testing X input devices under Linux. It has the following functions (which we will use)

  • xinput (list ): Type xinput directly or follow the list parameter, and all the input devices of the machine will be listed, including name, ID, level

  • ##xinput list –id-only: only list the devices ID (serial number, may change every time you boot up)

  • xinput map-to-output: Map the input device to the output, such as mapping the touch screen to a certain screen

  • xinput list-props: List the detailed information of a device, followed by the device ID.

First use:

xinput list

View the device list:

What is xinput under linux

You can see that the one with id=12 is touch board device, use

xinput list-props 12

to view the detailed information of the device:

What is xinput under linux

Set Device Enabled to 0 to disable it:

xinput set-prop 12 'Device Enabled' 0

Or you can disable it by using the number after Device Enabled:

xinput set-prop 12 154 0

Enable the reverse processing, set it to 1:

xinput set-prop 12 'Device Enabled' 1
# 或
xinput set-prop 12 154 1

Compile xinput without Makefile under Linux

xinput is a tool in xorg, used to set the input device to match the screen. It is compiled to make it easier to call the functions inside.

There is configure in the source code that can generate a Makefile, but because the installation source of the Linux version used is invalid, the dependent packages cannot be completed (yum install is invalid), and the makefile cannot be generated. Now I have found a similar version of the source code, from which I can extract what I need.

Directly using gcc to compile the source file *.c

will prompt that some header files cannot be found, such as Can be extracted from the libXinerame package

Unknown type name 'XIDeviceInfo'

The header file selection error caused by the lack of macro definition, can Specify gcc -DHAVE_XI2

#VERSION in the compilation command.

is not declared. A macro definition is required, but it cannot be specified on the command line. Add

#ifndef VERSION
#define VERSION "xinput 1.6.2a"
#endif

'XineramaQueryExtension' undefined reference in xinput.h

There are some library files that need to be linked, such as -lXinerama

cannot find -lXinerama

Check whether there is a correct library file or link in the lib64 path, just end with so

sudo ln -s /lib64/libXinerama.so.1 /lib64/libXinerama.so

Correct installation of the software package should generate a *.pc file

configure detects the pc file and generates a makefile based on the dependencies in the PC file

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
Related recommendations: "

Linux Video Tutorial"

The above is the detailed content of What is xinput under linux. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn