Ошибка FORTRAN - неопределенная ссылка на 'jfix' - PullRequest
0 голосов
/ 10 января 2012

Я новичок на Фортране. У меня есть несколько программ на Фортране, написанных на Intel FORTRAN, и сейчас я собираю их, используя gfortran.

Одна из подпрограмм использует функцию JFIX (). Когда я заканчиваю, выдается следующая ошибка.

undefined reference to 'jfix_'

Подпрограмма имеет ссылку на эту встроенную функцию вверху, как External::JFIX

Может кто-нибудь помочь мне решить эту проблему?

Ответы [ 2 ]

2 голосов
/ 10 января 2012

JFIX - это расширение Intel для FORTRAN.Он преобразует свой аргумент в INTEGER (4).

Может существовать эквивалент GNU FORTRAN или вам может потребоваться предоставить его самостоятельно.

Справочник по языку Intel FORTRAN доступен в различных местах напаутина.Вот один .

0 голосов
/ 10 января 2012

JFIX может быть тем, что вам нужно, но вы должны быть осторожны, так как JFIX преобразует не только действительные числа в целые числа (как это делает INT), но и все другие виды вещей в целое число (4).

Из справочника по языку Intel Fortran найден здесь , он преобразует

INTEGER (1), INTEGER (2), INTEGER (4), INTEGER (8), НАСТОЯЩИЙ (4), НАСТОЯЩИЙ (8), НАСТОЯЩИЙ (16), КОМПЛЕКС (4), КОМПЛЕКС (8), КОМПЛЕКС (16)

до

Integer (4)

Это было бы просто сказать вам и будущим читателям: хотя в данном случае это эквивалент INT, это не везде.

Поскольку вы новичок в Фортране, позвольте мне дать еще одну точность: число в скобках - это тип точности переменной. Например, REAL (4) - это простая точность в «обычной» архитектуре, REAL (8) с двойной точностью.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...