Как подготовить модуль Fortran из заголовочного файла C?

У меня есть этот чистый C-файл с 6 функциями, которые я хочу сделать доступными для программистов на Фортране:

http://tinyfiledialogs.sourceforge.net/

Может ли C на Фортран "Импорт" работать?

Должен ли я просто подготовить что-то вроде заголовочного файла на Фортране?

Я понимаю, что мой C-код использует несколько заголовочных файлов C Unix или Windows, и это усложнит преобразование. Но, безусловно, предложение эквивалента заголовка Fortran для функций 6 C должно быть достижимым.

char const * tinyfd_inputBox (
    char const * const aTitle ,
    char const * const aMessage ,
    char const * const aDefaultInput ) ; 
   // the returned value is a static array

редактировать: я начинаю понимать, что модули на самом деле зависят от компилятора. Возможно, вместо этого я должен подготовить make-файл, который будет использовать как объектный файл C, так и модуль fortran для его использования.

1 ответ

Если ваша цель состоит в том, чтобы облегчить жизнь программистам на фортране и помочь им использовать ваш код на С непосредственно в их программе, то вы, вероятно, захотите взглянуть на создание модулей на фортране, которые предоставляют интерфейсы. Они несколько похожи на ваш пример заголовка в том смысле, что они определяют тип процедуры и необходимые входы и выходы.

У меня нет особого опыта в этом, поэтому я не буду приводить здесь конкретный пример, но я отсылаю вас к этому сайту. Еще один полезный источник информации - посмотреть, как это делают другие пакеты, например, netcdf и PETSc.

Другие вопросы по тегам