matlab compiler SDKによるc言語プログラムの作成について

1 visualización (últimos 30 días)
Kyohei
Kyohei el 5 de Sept. de 2019
Comentada: Kyohei el 6 de Sept. de 2019
現在、matlab compiler SDKを用いて、matlabファイルからc言語のプログラムを作成しようと考えています。
MATLABコードによるC共有ライブラリの作成(https://jp.mathworks.com/help/compiler_sdk/gs/create-a-c-application-with-matlab-code.html)を参照して、C共有ライブラリ(libmatrix.dylib)を作成することはできました。
しかしその実行の際、ライブラリとは別にドライバーアプリケーションを用意する必要があるようでした。
そこで質問なのですが、matlab compiler SDKによってライブラリではなく、単体で引数を受け取って実行できるCのコードを作成することはできないのでしょうか。
何卒よろしくお願いいたします。

Respuesta aceptada

Kyohei
Kyohei el 6 de Sept. de 2019
ご提示いただいたCソースコードを含めてビルドしたところ、実行ファイル(matrix)が得られました。ありがとうございます。
同様のことを行列演算以外の一般的なMATLABコードに対して行うには、それぞれに対してドライバーアプリケーションを自分で作成しなければならないのでしょうか。
  2 comentarios
michio
michio el 6 de Sept. de 2019
そうですね。MATLAB Compiler SDK はライブラリを作るものなので、そのライブラリを呼び出す(今回であれば)Cコード部分は別途必要です。
Kyohei
Kyohei el 6 de Sept. de 2019
承知致しました。
ご丁寧にありがとうございます。

Iniciar sesión para comentar.

Más respuestas (1)

michio
michio el 5 de Sept. de 2019
MATLAB Compiler SDK を使う場合はどうしてもMATLAB Runtime (ドライバーアプリケーション?)が必要です。 必要としないものだと、MATLAB Coder を使ったアプローチが挙げられますが、Compiler に比べて対応する関数が比較的限られてしまいます。
  2 comentarios
Kyohei
Kyohei el 6 de Sept. de 2019
ご回答ありがとうございます。
MATLAB Coderも検討しましたが、おっしゃる通り関数が限られるため断念しました。
MATLAB Runtimeは既にインストールしています。説明が足りず申し訳ないのですが、ドライバーアプリケーションは以下のように、MATLAB Compilerでパッケージ化した後、ビルドする際に必要なようでした。このdriverApplication.cとは何を指すのでしょうか。
mbuild driverApplication.c libmatrix.dylib
michio
michio el 6 de Sept. de 2019
Editada: michio el 6 de Sept. de 2019
MATLAB Runtime のことでありませんでしたね、失礼いたしました。
この driverApplication.c は MATLAB Compiler SDKで作成した共有ライブラリを呼ぶ、Cアプリケーションのソースコードとなります。
提示いただいたWebサイト
の一番下の「Implement a C Shared Library with a Driver Application」のリンクの中にある「C Code to Implement Shared Library」の部分のCソースコードが該当します。
ヘッダファイル名、関数名など一部変更する必要はありますが、
mbuild driverApplication.c libmatrix.dylib
でドライバーアプリケーションを作成できますので試して頂けますでしょうか?

Iniciar sesión para comentar.

Categorías

Más información sobre MATLAB Compiler SDK en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2019a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!