Não é possível encontrar -lgfortran

4

Estou tentando instalar um pacote em R (pacote "ks"). Ele falha com a mensagem de erro:

/usr/bin/ld: cannot find -lgfortran

Eu já instalei o pacote essencial do Ubuntu:

sudo apt-get install build-essential

Eu também tentei adicionar links simbólicos:

sudo ln -s /usr/lib/x86_64-linux-gnu/libgfortran.so.3 /usr/lib/libgfortran.so
sudo ln -s /usr/lib/libgfortran.so.3.0.0 /usr/lib/libgfortran.so
sudo ldconfig

Eu uso gcc e g ++ regularmente, mas ainda não tive motivos para usar o gfortran.

Já vi outros com este problema no gcc-4.7 ( link ), por isso pergunto-me se isto é da instalação manual do gcc-4.7. Eu segui a receita da resposta aceita aqui aqui e aqui aqui .

A correr lsb_release -a imprime

  

Ubuntu 12.04.2 LTS

e executando uname -r imprime

  

3.2.0-39-generic-pae

Alguém pode oferecer conselhos sobre por que ld não funciona?

    
por user 01.04.2013 / 21:47

4 respostas

2

Você precisa instalar o gfortran. O erro indica que a lib estática para a vinculação de tempo de construção está faltando não nas bibliotecas dinâmicas que você tentou ajustar.

    
por rfindeis 01.04.2013 / 22:02
7

Um pouco mais de explicação para a resposta de Cloud Oliver.

Descubra a versão do gcc atualmente sendo usada através deste comando.

$sudo update-alternatives --config gcc

* 2            /usr/bin/gcc-4.7   60        manual mode

A entrada com * informa qual versão do GCC está sendo usada. Basta pressionar enter para manter as configurações atuais.

Se imprimir "sem alternativas para o gcc", talvez você precise usar este comando para descobrir a versão:

apt-cache policy gcc
  1. cd para o diretório gcc correto (substitua o número da versão pelo seu):

    cd /usr/lib/gcc/x86_64-linux-gnu/4.7/
    
  2. Você pode pesquisar por libgfortran.a com o seguinte comando (opcional). No meu caso, estava presente no diretório /usr/lib/gcc/x86_64-linux-gnu/4.8/ .

    find /usr/lib/gcc/x86_64-linux-gnu/ -name libgfortran.a
    
  3. Crie o link simbólico:

    sudo ln -s /usr/lib/gcc/x86_64-linux-gnu/4.8/libgfortran.a libgfortran.a
    
por PeacefulDaemon 30.09.2015 / 15:51
3

Solução:

cd /usr/lib/gcc/x86_64-linux-gnu/4.6
sudo ln -s /usr/lib/gcc/x86_64-linux-gnu/4.8/libgfortran.a libgfortran.a
    
por Cloud Oliver 22.11.2014 / 05:18
2

O que eu fiz, eu verifiquei no Ubuntu se as versões do g ++, gcc eg são as mesmas ou não.

Eu acho que é melhor se você tiver todos os três da mesma versão.

# first check the versions:
gcc --version
g++ --version
gfortran --version

# If versions are different, then install:
sudo apt-get update
apt-get install gcc-4.9 g++-4.9 gfortran-4.9

Para mim, isso resolveu todos os problemas que eu estava enfrentando ao instalar o pacote "TTR" em R usando o RStudio no Ubuntu.

    
por Manoj Kumar 04.04.2017 / 14:25