私はいくつかのMATLABコードを書いていますが、いくつかの最適化されたCルーチンを使用したいと思います。私はCソースコードを持っています、そしてそれはうまく働きます。MEXファイルを作成しましたが、最適化されたCルーチンと同じフォルダーにある場合はコンパイルできます。ただし、このコードをさまざまなプラットフォームで他の人に配布できるようにしたいと思います。MEXファイルはバイナリであるため、各個人は(おそらく)自分のマシンで再コンパイルする必要があります。それは問題ありませんが、私はプロセスをできるだけ苦痛のないものにしたいと思っています。
現在、すべてのファイルが同じディレクトリにある場合は、次のように呼び出します。
mex mexfile.c other1.o other2.o other3.o
そのディレクトリからは、期待どおりに正常に機能します。ただし、組織的な目的で、Cコードを独自の(サブ)ディレクトリに配置したいと思いますcode
。残念ながら、このような構造にすると、mex
コマンドがエラーになります(エラーは、試したさまざまなものによって異なります)。私は次のようなことを試しました
mex mexfile.c code/other1.o code/other2.o code/other3.o
とコマンドのオプションが-Ipathname
ありますが、これらは私には機能しませんでした。やりたいことをやる簡単な方法が必要だと思いますが、適切なドキュメントを見つけられないか、自分で理解することができません。どんな助けでもいただければ幸いです。-Lfolder
mex