我正在尝试使用需要 Kaldi 库的 DiscVoice 库。为了安装 Kaldi,我需要运行
extras/check_dependencies.sh
来检查程序的依赖关系,目前我得到:
extras/check_dependencies.sh: zlib is not installed.
extras/check_dependencies.sh: The following prerequisites are missing; install them first:
zlib1g-dev
我一直在尝试安装zlib库,但没有成功。我已经尝试过
brew install zlib
,它运行成功,但是当我运行 extras/check_dependencies.sh
时,输出不会更改以反映这一点。
我正在 macOS Catalina 上工作。
zlib 已经存在于 macOS 中。您无需安装它。
您可能需要检查
extras/check_dependencies.sh
以了解 如何 寻找 zlib。 macOS 不会将其头文件或库文件存储在通常的位置。
好吧..假设您实际上需要安装
kaldi
,而不仅仅是运行脚本来检查其依赖项,我可以肯定地说您应该尝试根kaldi存储库中INSTALL
手册中的选项[2]。
它说使用
cmake
安装,按照说明放置在kaldi/cmake/
。
对于 macOS Catalina,您必须执行三个步骤来构建和安装 kaldi。这些步骤,如
kaldi/cmake/INSTALL
中所述:
mkdir -p build && cd build
cmake -DCMAKE_INSTALL_PREFIX=../dist ..
— 在最后两个点之后,您可以放置 cmake 配置标志,但我们假设您不需要它们,因此,只需使用放置在那里的命令即可。
cmake --build . --target install -- -j8
— 8
是 CPU 核心数,所以你可以选择更少,在我的例子中是 4。
第二步会给你一些警告和缺少的存储库。如果最后你看到这样的三行,你可以忽略它们:
...
-- Configuring done (1.8s)
-- Generating done (6.0s)
-- Build files have been written to: /Users/<user>/kaldi/build
(当然,您的计算机上的完整路径可能有所不同)
之后您可以运行列表中的第三个命令。它应该构建一切。
附注我尝试了不同的安装方法,但没有一个有效。但这至少完成了安装。
P.S.S.在构建和安装 kaldi 之前,我做了
brew install openblas
,但我不能说这是否是必要的步骤,因为 kaldi 应该使用框架 Accelerate
,而不是 OpenBLAS,该框架预装了 Catalina(实际上我不确定,但我没有专门安装它)。
P.S.S.S。在 Catalina 10.15.7 上通过 Cmake 安装,没有错误,按照
kaldi/cmake/INSTALL
文件中的说明一步一步进行。没有使用 oneMKL(现在没有适用于 macOS 的免费分发版本)。