0

我想在服务器上安装 kaldi,当我运行 check_dependencies.sh 时,它告诉我应该安装 gfortran,但我不允许使用 sudo。

我试图从 anaconda 安装 gfortran,但它只显示 gfortran 在当前频道中不可用,即使我已经更新了我的 conda。

有没有替代方法?谢谢!!

4

2 回答 2

2

您可以轻松地在您的主目录中安装 GCC,而无需任何 root 或管理员权限。

只需下载源代码(例如,您选择的快照),运行提供的./contrib/download_prerequisites和比神圣三重奏configure --prefix=$HOME --enable-languages=c,c++,fortran, make, make install.

我建议在不同的目录中运行它们。一般来说,只需遵循https://gcc.gnu.org/wiki/InstallingGCC可能的命令序列的完整示例在页面底部。

于 2021-07-28T07:43:09.307 回答
0

我通常使用这个conda-forge::compilers包来满足我的编译需求。它包括 C、C++ 和 FORTRAN,并在平台上进行了抽象(即,为osx-64linux-64等提供等效的编译器)。

在这种特殊情况下,以下环境似乎足以编译 Kaldi:

kaldi-compile.yaml

name: kaldi-compile
channels:
  - conda-forge
dependencies:
  - compilers  # this covers C, C++, and FORTRAN
  - make
  - cmake
  - icu
  - openblas   # `mkl` could be used instead

在 Mambaforge 容器中测试了它的工作原理:

docker run --rm -it condaforge/mambaforge bash

和:

码头工人会议

## create env
mamba create -yn kaldi-compile compilers make cmake icu openblas

## activate env
conda activate kaldi-compile

## basic install instructions
cd /home
git clone https://github.com/kaldi-asr/kaldi.git kaldi --origin upstream
mkdir -p kaldi/build && cd kaldi/build

## configure, build, install
cmake -DCMAKE_INSTALL_PREFIX=../dist .. 
cmake --build . --target install -- -j8
于 2021-07-28T20:01:48.950 回答