Для обработки событий нажатия на кнопки мыши в среде Linux можно использовать библиотеку Xlib. Пример кода на C для обработки нажатий всех кнопок мыши включая уклоны колеса влево и вправо:
```c
#include <X11/Xlib.h>
#include <stdio.h>
int main() {
Display *d;
Window w;
XEvent e;
int screen;
d = XOpenDisplay(NULL);
if (d == NULL) {
fprintf(stderr, "Cannot open display\n");
return 1;
}
screen = DefaultScreen(d);
w = XCreateSimpleWindow(d, RootWindow(d, screen), 1, 1, 500, 300, 0, BlackPixel(d, screen), WhitePixel(d, screen));
XSelectInput(d, w, ExposureMask | ButtonPressMask | ButtonReleaseMask | PointerMotionMask | ButtonMotionMask | KeyPressMask);
XMapWindow(d, w);
while (1) {
XNextEvent(d, &e);
if (e.type == ButtonPress) {
printf("Button pressed: %d\n", e.xbutton.button);
}
if (e.type == ButtonRelease) {
printf("Button released: %d\n", e.xbutton.button);
}
if (e.type == MotionNotify) {
printf("Mouse moved to (%d, %d)\n", e.xmotion.x, e.xmotion.y);
}
if (e.type == KeyPress) {
printf("Key pressed: %s\n", XKeysymToString(XkbKeycodeToKeysym(d, e.xkey.keycode, 0, 0)));
}
}
XCloseDisplay(d);
return 0;
}
```
Для компиляции данного кода необходимо установить заголовочные файлы библиотеки Xlib, например, на Ubuntu это можно сделать следующей командой:
```
sudo apt-get install libx11-dev
```
Затем можно скомпилировать код командой:
```
gcc -o mouse_events mouse_events.c -lX11
```
Где `mouse_events` - название исполняемого файла, `mouse_events.c` - название исходного файла.
После компиляции можно запустить исполняемый файл и он будет выводить информацию о событиях мыши (нажатие кнопок, перемещение и т. д.) в терминал.