次のように、 matlab 2015a を使用して windows7 でファイルを生成.c
し.dll
ました。
codegen -config:dll example_fun.m -args {complex(0,0),0,0,0,0}
次のように、コマンドプロンプトでgccを使用.dll
して、生成されたメインファイルとともに出力ファイルを使用したいと思います。.c
gcc main.c example_fun.dll -Wl,-rpath=$(pwd)
.exe ファイルが生成され、cmd で次のように実行しようとしていますa.exe
。ただし、次のエラー メッセージエラー メッセージが表示されます。
「.dll がコンピューターにないため、プログラムを開始できません。この問題を解決するには、プログラムを再インストールしてください」
.dll ファイルは a.exe と同じ場所にありますが。
ここでの奇妙な問題は、/a.out を実行することで同じ手順が Linux でうまく機能し、出力が問題なく出力されることです。
全体の問題は、生成された a.exe が .dll を認識できるようにする方法だと思います-前に述べたように-両方とも同じフォルダーにあります。
システム変数にフォルダーのパスを追加しようとしました。ただし、同じエラーメッセージが表示されました。
だから私は間違ったステップをしていますか? .exe ファイルを生成し、main.c と、matlab codegen から生成された付随する .dll の両方から実行する他の方法はありますか?