问题描述
最近在自己的小米笔记本上新加了块硬盘,装了个Ubuntu18.04,但是笔记本指纹识别用不了,于是开始网上搜索解决方案,在csdn上找到一篇关于小米笔记本linux系统安装指纹驱动的文章,链接如下:https://blog.csdn.net/qq_29343201/article/details/79832442
下载下来发现版本已更新,没有autogen.sh来执行操作。
处理过程
获取代码和生成工具
新版本libfprint是用meson构建系统构建的
如果安装过之前的老版本请先使用自动脚本卸载了再安装新版本。
新版本的安装说明里使用了python3的venv环境来构建libfprint,代码如下:
git clone https://gitlab.freedesktop.org/libfprint/libfprint
cd libfprint
apt install ninja-build
# The doc recommends system-wide installation with pip, which might not be the best/easiest option.
# Here is how you can install meson in isolated environment:
python3 -m venv venv
. venv/bin/activate
pip install -U pip
pip install meson
因为我之前安装过pip和meson,所以提示发现存在安装包。
准备安装环境
将以下依赖包全部安装,以免构建是出差。
#eg: sudo apt install xxx
libglib2.0-dev
libnss3-dev
libpixman-1-dev
libusb-1.0.0-dev
libx11-dev
libxv-dev
pkg-config
编译安装libfprint
代码如下:
venv/bin/meson builddir
venv/bin/meson configure builddir -Ddoc=false -Dlibdir=lib
cd builddir
ninja
sudo ninja install
venv/bin/meson builddir
这样驱动就安装好了,你可以测试以下自己的指纹扫描器是否可以使用。代码如下:
sudo examples/img_capture
打开 finger.pgm 查看指纹图片。
测试注册指纹和验证指纹
sudo examples/enroll
sudo examples/verify
重启系统,在设置-详细信息-用户里面会有指纹登录,点击即可录入指纹。