ライブラリを含む MEX ファイルを作成しようとするとリンクエラーとなるのはなぜですか?
6 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
MathWorks Support Team
il 25 Ott 2013
Risposto: MathWorks Support Team
il 25 Ott 2013
C で作成したライブラリ (myLib.lib) をリンクさせて MEX ファイルを作成しようとするとリンクエラーとなります。MATLAB は 64-bit 版を使用しています。
MEX 作成時のコマンド:
>> mex myFunc.c -L<カレントパス> -lmyLib
エラーメッセージ:
ライブラリ C:\Users\myDir\AppData\Local\Temp\mex_xIsFIl\templib.x とオブジェクト
C:\Users\myDir\AppData\Local\Temp\mex_xIsFIl\templib.exp を作成中
myFunc.obj : error LNK2019: 未解決の外部シンボル timestwo が関数 mexFunction で参照されました。
myFunc.mexw64 : fatal error LNK1120: 外部参照 1 が未解決です。
C:\PROGRA~1\MATLAB\R2012A\BIN\MEX.PL: Error: Link of ' myFunc.mexw64' failed.
(myLib 内の timestwo 関数を使用しようとしています)
Risposta accettata
MathWorks Support Team
il 25 Ott 2013
ライブラリが作成されたプラットフォームと、MATLAB が動作するプラットフォームが異なる場合に、このようなエラーが発生します。
myLib.lib が 32-bit 版の VC++ で作成された場合はこのようなエラーメッセージが出力されます。
以下のいずれかの方法で、エラーを回避します。
・32-bit 版の VC++ で myLib を作成し、32-bit 版 MATLAB で使用する。
・64-bit 版の VC++ で myLib を作成し、64-bit 版 MATLAB で使用する。
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su C MEX ファイル アプリケーション in Help Center e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!