【问题标题】:Installing gfortran without administrator's permission未经管理员许可安装 gfortran
【发布时间】:2021-07-28 03:25:28
【问题描述】:

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

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

还有其他方法吗?谢谢!!

【问题讨论】:

  • 欢迎您,请拨打tour。请显示实际的确切错误消息。您可以从源代码编译 GCC,无需任何管理员权限。我这样做了很多次。
  • 当我运行 apt install gfortran 时,它只是显示“无法打开锁定文件 /var/lib/dpkg/lock-frontend - open (13: Permission denied)。”
  • 正如我所写,从源代码编译并安装到您的主目录中。
  • 这将指导您完成整个过程:owsiak.org/… - 请注意,我使用的是 macOS,但这里没有太大的区别。有几个特定于 macOS 的步骤,您可以直接跳过它们。

标签: installation permissions conda gfortran kaldi


【解决方案1】:

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

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

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

【讨论】:

    【解决方案2】:

    我通常使用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
    

    与:

    Docker 会话

    ## 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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-28
      • 2012-12-29
      • 2020-04-07
      • 2022-01-23
      • 2011-06-01
      • 2012-07-11
      相关资源
      最近更新 更多