Не могу скомпилировать и связать библиотеку
Я пытаюсь использовать библиотеку, скомпилированную с помощью gcc, называемую matlisp, на основе кода на языке фортран. После указания компилятора f77 я мог выполнить команду autoreconf, configure и make для получения файла libmatlisp.so.
Но когда я пытаюсь использовать его, я получаю:
Error opening shared object ".../libmatlisp.so":
/usr/lib/libf2c.so.2: undefined symbol: MAIN__.
И когда я выполняю команду ld libmatlisp.so, я получаю:
...
libmatlisp.so: undefined reference to `idamax_'
libmatlisp.so: undefined reference to `dger_'
/usr/lib/libf2c.so.2: undefined reference to `MAIN__'
libmatlisp.so: undefined reference to `zscal_'
libmatlisp.so: undefined reference to `dscal_'
....
Есть ли способ улучшить ситуацию?
Я уже пробовал это решение, но оно не работает.
Я также пытаюсь изменить компилятор на gfortran, но я получаю некоторые сообщения об ошибках во время выполнения, в которых упоминаются отсутствующие библиотеки, которые являются частью libf2c.
1 ответ
Хорошо. Я перехожу на более свежий источник matlisp 2012 вместо 2003, и теперь он работает нормально в моей среде.