无法将 libfprint 编译为 meson 项目

无法将 libfprint 编译为 meson 项目

我的最终目标:在 Ubuntustdio 20.04 上使用联想 T430 的指纹读取器。

根据以下内容对设备进行类型划分lsusb

Bus 001 Device 003: ID 147e:2020 Upek TouchChip Fingerprint Coprocessor (WBF advanced mode).

根据https://fprint.freedesktop.org/supported-devices.html他们支持这个设备。

我使用下载按钮下载了 libfprint-master.tar.gz https://gitlab.freedesktop.org/libfprint/libfprint.git并将其解压到某个目录中libfprintf。解压后,我发现libfprint-master其中有另一个目录,其中还有一个目录builddir

安装python和meson-0.61.1后,我还添加了

export PATH="$PATH:/home/verwalter/.local/bin"

~/.profile调用 meson builddir 而不明确给出 meson 的完整路径。根据https://mesonbuild.com/Quick-guide.html#compiling-a-meson-project我应该

  1. cd到源代码的根目录。我这样做了:

    cd /home/verwalter/Downloads/libfprint/libfprint-master
    
  2. meson builddir && cd builddir从那里申请

  3. 采取进一步措施。

步骤 2 失败并显示以下消息:

The Meson build system
Version: 0.61.1
Source dir: /home/verwalter/Downloads/libfprint/libfprint-master
Build dir: /home/verwalter/Downloads/libfprint/libfprint-master/builddir
Build type: native build
Project name: libfprint
Project version: 1.94.2
C compiler for the host machine: cc (gcc 9.3.0 "cc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0")
...
meson.build:68: WARNING: Consider using the built-in warning_level option instead of using "-Wall".
meson.build:69: WARNING: Consider using the built-in warning_level option instead of using "-Wall".
Found pkg-config: /usr/bin/pkg-config (0.29.1)
...
Run-time dependency gobject-2.0 found: YES 2.64.6
Did not find CMake 'cmake'
Found CMake: NO
Run-time dependency gusb found: NO (tried pkgconfig)

meson.build:84:0: ERROR: Dependency "gusb" not found, tried pkgconfig

A full log can be found at /home/verwalter/Downloads/libfprint/libfprint-master/builddir/meson-logs/meson-log.txt

我错过了什么?下一步该怎么做才能纠正这个问题?

答案1

首先你应该知道这个包已经可以在官方存储库1.90 版本。因此,如果您不是开发人员,并且不想修补源代码,那么您只需通过以下方式安装二进制文件:

sudo apt-get update
sudo apt-get install libfprint-2-2 libfprint-2-tod1

然后找到使用此版本的库来测试指纹读取器的方法。


如果你需要 Ubuntu 20.04 LTS 上较新的 1.94.1 版本的 fprintd,你可以通过添加以下代码继续,而无需编译Zorin OS 的 PPA经过:

sudo add-apt-repository ppa:zorinos/fprint
sudo apt-get update
sudo apt-get dist-upgrade # to get newer dependencies

如果您对编译有把握 - 请阅读下文。
你必须先获取已打包的构建依赖项https://packages.ubuntu.com/source/focal-updates/libfprint按如下步骤打包:

  1. 启用源代码存储库(deb-源文件) 在“软件和更新”中 ( software-properties-gtk)

  2. 获取构建依赖项

    sudo apt-get update
    sudo apt-get build-dep libfprint
    
  3. 再次从 Git 编译 libfprint 1.94.3。

    sudo apt-get install git cmake udev libudev-dev libgudev-1.0-dev
    cd ~/Downloads
    git clone https://github.com/freedesktop/libfprint -b v1.94.3
    cd libfprint
    meson build
    meson test -C build --print-errorlogs
    sudo meson install -C build
    

相关内容