Posso re-compilar o python com uma versão mais antiga do gcc no Ubuntu 18.04?

0

Ontem, eu atualizei meu sistema operacional do Ubuntu 16.04 para 18.04.

Desde então, um dos meus módulos python (no python 2.7) não funciona mais. Tentando importá-lo, ocorreu um erro.

Este módulo usa código fortran com f2py, então eu tentei usar update-alternatives para voltar para o gcc-5 e o gfotran-5 antes de fazer novamente.

Até certo ponto, isso melhorou a situação, já que o python agora aceita importar o módulo. No entanto, ainda não funciona quando tento usá-lo, jogando erros que começam com:

 capi_return is NULL
 Call-back "some_routine" failed.

Encorajado por esse aparente progresso, quero ver se o erro restante é devido a uma incompatibilidade entre as versões do compilador usadas para fazer o módulo e o próprio python. De fato, python foi compilado com o gcc 7.3.

É possível recompilar o python 2.7 com o gcc-5?

O que eu tentei: Depois de mudar para as versões mais antigas do compilador, eu entrei no modo de console e fiz:

 sudo apt-get install --reinstall python

Mas o python ainda diz que foi compilado com o gcc 7.3.

Alguma outra coisa mudou entre as duas versões do SO que quebraram o módulo?

Eu quero enfatizar que eu mesmo não escrevi o módulo e que funcionou bem antes da atualização do sistema operacional.

Agradecemos antecipadamente por suas sugestões:)

    
por Antoine 05.09.2018 / 09:53

1 resposta

0

Isso ocorre porque o Ubuntu 18.04 não vem com o Python2. Ele vem com o Python3 por padrão. Você pode facilmente instalar o python2 ao lado do python3. Então seus módulos funcionarão novamente.

Você não precisa compilar nada. Basta instalar o python 2:

sudo apt-get install python2.7

Você pode verificar qual versão é qual usando o argumento de versão:

root@server:~/PycharmProjects$ python2 --version
Python 2.7.12
root@server:~/PycharmProjects$ python3 --version
Python 3.5.2
    
por 13.09.2018 / 20:38