Mex C file generation Linker library error

1 回表示 (過去 30 日間)
Rich Osman
Rich Osman 2020 年 2 月 7 日
コメント済み: Rich Osman 2020 年 2 月 10 日
I'm trying to compile a C-source MEX file I received from a third party. I'm getting a linker error. It looks to me like it can't find zzz.lib, but I can't figure out where it's looking for it. yyy.c zzz.lib, zzz.h and zzz.dll are all in the same (current) folder.
>> mex yyy.C
Building with 'Microsoft Visual C++ 2019 (C)'.
Error using mex
Creating library zzz.lib and object zzz.exp
yyy.obj : error LNK2019: unresolved external symbol zzz referenced in function mexFunction
zzz.mexw64 : fatal error LNK1120: 1 unresolved externals
the linker error is clearly generated by MSVC, but I have no idea where it's looking for zzz.lib I can't figure out where it's trying to build the output files. It's not in C:\Users\Rich\source\repos which is the default for MSVC.
I'm confident that zzz.lib is good because I'm using it with C++ code under MSVC.
Any assistance or constructive suggestions appreciated.

採用された回答

James Tursa
James Tursa 2020 年 2 月 10 日
編集済み: James Tursa 2020 年 2 月 10 日
Do you already have a zzz.lib file? Normally to get your mexFunction code to link to the library you simply include it as part of the mex command. E.g., if yyy.c and zzz.lib are in the current directory,
mex yyy.c zzz.lib
Or if zzz.lib is not in the current directly you could provide the path name as well.
  1 件のコメント
Rich Osman
Rich Osman 2020 年 2 月 10 日
I do already have zzz.lib. After a call with tech suport this morning I learned the answer:
mex -lzzz yyy.c
which yields 'MEX completed successfully.'
I've not tested the result as I have a half-dozen more to compile and some code to write, but I seem to be moving again. I'm not sure how I missed teh -l option.
Thanks for your reply.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeWrite C Functions Callable from MATLAB (MEX Files) についてさらに検索

製品


リリース

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by