Termux中执行pip install pynput报错缺失内核头文件如何解决
问题原因
安装pynput时依赖的evdev库编译需要Linux内核头文件,你当前Termux环境缺失linux/input.h、linux/input-event-codes.h两个必要头文件,导致evdev编译失败,最终pynput安装中断。
解决方案
常规方案(90%以上情况可解决)
- 先更新Termux软件源,安装编译所需依赖和内核头文件:
pkg update && pkg upgrade -y pkg install -y python3 python-dev clang make linux-headers
- 重新执行pynput安装命令:
pip install pynput
备用方案(常规方案无效时使用)
如果常规方案安装后依然提示头文件缺失,可手动指定路径编译安装evdev,再安装pynput:
- 下载evdev源码并解压:
pip download evdev tar -zxvf evdev-*.tar.gz cd evdev-*/
- 手动指定头文件路径编译安装evdev:
python setup.py build build_ecodes --evdev-headers /data/data/com.termux/files/usr/include/linux/input.h:/data/data/com.termux/files/usr/include/linux/input-event-codes.h build_ext --include-dirs /data/data/com.termux/files/usr/include/ install
- 退回上级目录,安装pynput:
cd .. pip install pynput
注意事项
pynput的输入监听、按键模拟功能在Termux环境运行需要Root权限,无Root权限时相关功能无法正常调用。
内容的提问来源于stack exchange,提问作者wreck101
相关产品推荐
相关产品推荐

