How to fix Undefined symbols for architecture x86_64
20 views (last 30 days)
Show older comments
Im trying to connect a C program to Matlab, im launching the C program from terminal but i keep getting this error:
Undefined symbols for architecture x86_64:
"_engClose", referenced from:
_main in first-e0c476.o
"_engEvalString", referenced from:
_main in first-e0c476.o
"_engGetVariable", referenced from:
_main in first-e0c476.o
"_engOpen", referenced from:
_main in first-e0c476.o
"_engOutputBuffer", referenced from:
_main in first-e0c476.o
"_engPutVariable", referenced from:
_main in first-e0c476.o
"_mexPrintf_800", referenced from:
_main in first-e0c476.o
"_mxCreateDoubleMatrix_800", referenced from:
_main in first-e0c476.o
"_mxDestroyArray_800", referenced from:
_main in first-e0c476.o
"_mxGetNumberOfElements_800", referenced from:
_main in first-e0c476.o
"_mxGetPr_800", referenced from:
_main in first-e0c476.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
any help is greatly appreciated.
0 Comments
Answers (1)
Abhishek gangwar
on 24 Jul 2020
May be this issue is because of you do not a function named mexFunction in your MEX-file and that function needs to have a specific signature, if it is the senario, define that function in your MEX-file. Let me know if you are still having this issue after doing as I suggested.
4 Comments
See Also
Categories
Find more on Write C Functions Callable from MATLAB (MEX Files) in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!