error LNK2019, 3 unresolved external symbols
4 ビュー (過去 30 日間)
古いコメントを表示
Hi, I'm new to Matlab. I'm trying to build a C mex file. The C file and header files are all on the search path. I've been able to build C mex files, following the documents, but I'm not sure what's wrong here. Here's the error message I'm getting:
Error using mex Creating library DynamicProgrammingQ2.lib and object DynamicProgrammingQ2.exp DynamicProgrammingQ2.obj : error LNK2019: unresolved external symbol dp_costs referenced in function mexFunction DynamicProgrammingQ2.obj : error LNK2019: unresolved external symbol dp_build_gamma referenced in function mexFunction DynamicProgrammingQ2.obj : error LNK2019: unresolved external symbol dp_all_indexes referenced in function mexFunction DynamicProgrammingQ2.mexw64 : fatal error LNK1120: 3 unresolved externals
Please point me in the right direction.
2 件のコメント
Geoff Hayes
2015 年 1 月 14 日
Matthew - it sounds like your C code is referencing functions, for example dp_build_gamma (and a couple of others too), that you probably have defined in a header but you don't have the body for them. Could it be that there is a library that you should be linking into your build? Also, what is the mex command that you are using to build with?
採用された回答
Geoff Hayes
2015 年 1 月 15 日
Matthew - if you have other C files that have the function bodies for those function prototypes/signatures of dp_grid.h, then you need to include them when you build your mex function. This is why you are observing the unresolved external symbol errors. Try rebuilding as
mex T:\Matlab\SRVF_FDA\DynamicProgrammingQ2.c otherCFile.c
where otherCFile.c is the path to and the name of the C file that includes the missing function bodies.
その他の回答 (2 件)
Md.Salman
2016 年 8 月 25 日
Anyone who is trying to use the patchmatch algorithm and getting problems in building mex files using the .bat file, use the following commands from matlab command prompt.
>> mex knn.cpp mexutil.cpp nn.cpp nnmex.cpp patch.cpp vecnn.cpp simnn.cpp allegro_emu.cpp -output nnmex
>> mex knn.cpp mexutil.cpp nn.cpp votemex.cpp patch.cpp vecnn.cpp simnn.cpp allegro_emu.cpp -output votemex
It took me a long time trying to figure out. Posting so that can be helpful to others.
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!