Вчера я обновил свою ОС с Ubuntu 16.04 до 18.04.
С тех пор один из моих модулей Python (на Python 2.7) больше не работает. Попытка импортировать его привела к ошибке.
Этот модуль использует код fortran с f2py, поэтому я попытался использовать update-alternatives
чтобы переключиться обратно на gcc-5 и gfotran-5, прежде чем делать это снова.
В некоторой степени это улучшило ситуацию, так как теперь Python разрешает импортировать модуль. Тем не менее, он все еще не работает, когда я пытаюсь использовать его, выбрасывая ошибки, которые начинаются с:
capi_return is NULL
Call-back "some_routine" failed.
Воодушевленный этим очевидным прогрессом, я хочу посмотреть, связана ли оставшаяся ошибка с несоответствием между версиями компилятора, использованными для создания модуля, и самого python. Действительно, python был скомпилирован с gcc 7.3.
Можно ли пересобрать python 2.7 с помощью gcc-5?
Что я пробовал: после перехода на более старые версии компилятора я перешел в режим консоли и сделал:
sudo apt-get install --reinstall python
Но python по-прежнему говорит, что он был скомпилирован с gcc 7.3.
Может ли что-то еще измениться между двумя версиями ОС, которые сломали модуль?
Хочу подчеркнуть, что я сам не писал модуль, и до обновления ОС он работал нормально.
Заранее спасибо за ваши предложения :)