Кто-нибудь есть опыт создания разделяемой библиотеки в MATLAB?
==============================================================

Исследователь создал небольшое моделирование в среде MATLAB, и мы хотим, чтобы сделать его доступным для других. Мой план взять моделирование, очистить несколько вещей, и превратить его в набор функций. Затем я планирую собрать его в библиотеку C и использовать SWIG для создания Python обертки. В этот момент я должен быть в состоянии назвать имитацию из небольшого приложения Django. По крайней мере, я надеюсь на это.

Есть ли у меня правильный план? Кто-нибудь еще сделать что-то подобное? Можете ли вы дайте мне знать, если есть какие-либо серьезные подводные камни, что я не в курсе на данный момент?

 

Я не помогу, но я помню, что я был в состоянии обернуть моделирования MATLAB в DLL, а затем вызвать его из приложения Delphi. Он работал очень хорошо.

 

Одна вещь, чтобы помнить о том, что компилятор Matlab не компилировать код Matlab в родной машинных команд. Это просто заворачивает его в отдельный исполняемый файл или библиотеку с его собственной средой выполнения двигателя, который запускает его. Вы могли бы запустить свой код без установленного Matlab, и вы могли бы взаимодействовать с другими языками, но он все равно будет интерпретироваться Matlab кода, так что не будет убыстрения.

 

Я бы также попробовать ctypes первым. 

1. Используйте компилятор Matlab для компиляции кода в C.
2. Компиляция кода C в DLL.
3. Используйте ctypes для загрузки и вызывать код из этой DLL

Самый сложный этап является, вероятно, 1, но если вы уже знаете, Matlab и использовали компилятор Matlab, вы не должны иметь серьезные проблемы с ним.

 

Может быть , попробовать [ctypes](http://python.net/crew/theller/ctypes/) вместо SWIG. Если он был включен как часть Python 2.5, то это должно быть хорошо :-)