Ссылка на gfortran для mex file - PullRequest
       15

Ссылка на gfortran для mex file

0 голосов
/ 18 января 2019

Я пытаюсь создать mex файлы для использования некоторого кода C ++ в Matlab, но сталкиваюсь с ошибкой при компиляции, которая, я думаю, выходит за рамки Matlab. Я на Windows.

Пример, с которым я борюсь, это пример Mex Interface в библиотеке Armadillo для линейной алгебры, доступный: здесь . Файл Matlab - это то, что я запускаю, и это выглядит так:

% Compile the demo as a mex file
mex -lgfortran armaMex_demo.cpp -I/path/to/armadillo

Я получаю ошибку:

Error using mex
MEX cannot find library 'gfortran' specified with the -l option.
 MEX looks for a file with one of the names:
 libgfortran.lib
 gfortran.lib
 Please specify the path to this library with the -L option.

Пробуя некоторые вещи, которые я нашел в Интернете, я установил MinGW и cygwin64 и добавил пути к их папкам bin в переменную PATH. До этого я также устанавливал MinGW через Matlab.

Мой вопрос: как мне связать его с gfortran?

Если я ищу C: для libgfortran, я нахожу некоторые файлы, но ни один из них не имеет файла, заканчивающегося .lib (но, например, .dll и .a), и если я ищу gfortran, я нахожу некоторые .exe файлы, но опять же, .lib файл. Если я запускаю gfortran -dumpversion в терминале, я получаю 4.9.3 назад, так что он, очевидно, где-то там. Я явно что-то упускаю, и это, по меньшей мере, не моя сильная сторона.

...