Библиотеки GCC, созданные GCC, несовместимы с Intel Visual Fortran?

StackOverflow https://stackoverflow.com/questions/2144074

  •  23-09-2019
  •  | 
  •  

Вопрос

Я использовал gcc для компиляции нескольких исходных файлов Фортрана в *.lib и *.dll на платформе Windows, используя последнюю версию Мингу .Используется gcc версии 3.Результат вывода: arpack_win32.dll, blas_win32.dll и lapack_win32.dll.

Затем я хочу скомпилировать sssimp.f против arpack_win32.dll, blas_win32.dll и lapack_win32.dll с использованием Компилятор Intel Visual Fortran для Windows, потому что sssimp.f использует эти библиотеки DLL.Но у меня сложилось впечатление( с форума поддержки Intel) что это нет возможный.

Верно ли мое впечатление?Или, пока я могу создавать базовые библиотеки и библиотеки DLL (независимо от того, в каком компиляторе и сколько лет), я могу использовать их в качестве базовых библиотек и DLL, и я могу ссылаться на них из любого, современного или старый, компилятор?

Это было полезно?

Решение

Да, g77 использует другой ABI, чем IVF.Поэтому, если у IVF нет опции совместимости с g77/f2c, она не будет работать.

Самым простым решением для вас, вероятно, будет использование IVF и для компиляции библиотек.

Другие советы

Как уже отмечалось, смешивание компиляторов с разными соглашениями о вызовах, вероятно, будет очень трудным.

В этом ответе на форуме Intel указывалась версия arpack, переведенная на Fortran 90 - http://people.sc.fsu.edu/~burkardt/f_src/arpack/arpack.html -- Ты можешь это использовать?Также см http://people.sc.fsu.edu/~burkardt/f_src/lapack/lapack.html и http://people.sc.fsu.edu/~burkardt/f_src/blas1_s/blas1_s.html

Или Intel Visual Fortran должен иметь возможность скомпилировать Fortran 77, используя подходящие параметры компилятора.Какие языковые конструкции он отвергает?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top