2

この質問はすでに出されているように思えるかもしれませんが、この問題に対処し、解決策を探して数日経った後、私は何も考えていません。まず、matlab2012a を使用しています

それで、mexa64 ファイルをコンパイルしました。それを foo.mexa64 と呼びましょう。私のコンピューターは 64 ビットを処理できます (matlab >>computer、GLNXA64 を返します)。pathtool を使用して、foo.mexa64 があるフォルダーをパスに追加しました。matlabを開いたときにこれを行ったので、変更があります。これも root/toolbox フォルダーではなく、Documents/MATLAB.../fooDirectory フォルダーに保存されます。

これらの mex ファイルを別のディレクトリのコマンド ラインで実行すると、すべて正常に動作します。ただし、関数でそれらを呼び出すことはできません。「タイプ 'double' の入力引数に対して未定義の関数 'foo'」エラーが発生します。

「which foo」関数を使用すると、次のパスが返されます: home/.../Documents/MATLAB/.../fooDirectory/foo.mexa64

'help foo' は foo が見つからないことを返します

確認するために、fooDirectory フォルダーに dummy.m ファイルを作成しました。この関数は、ディレクトリ外の他の関数で問題なく実行できます。

他に何か必要な場合は、お知らせください。私は完全に途方に暮れています。

4

0 に答える 0