Could I compile C-code with OpenCV and transfer the code without OpenCV dependency
Show older comments
Currently I use MEX to compile C-code based on OpenCV to ensure the communication between C-code and MATLAB.
However, due to the usage of OpenCV, this program seems to be unable to transfer to another PC which is not installed with OpenCV.
- If I release the C-code as an executable program ('.exe' or '.o'), the communication between the executable program and MATLAB is not friendly ( as far as I know, The only way of this method is to create a file to write data when processing in C-code, and read data in MATLAB).
- If I use MEX, it seems that MEX is a method of dynamic linking, and OpenCV is still to be installed when on a new PC.
Here comes the question. Could I compile the C-code ( based on OpenCV ) with a static method in MATLAB, to guarantee a friendly data communication and a good transfer on MATLAB-installed machines.
5 Comments
Walter Roberson
on 25 Feb 2019
See here on how to build OpenCV as a static library
Sissuire
on 26 Feb 2019
@Sissuire Can you please elaborate more on this issue? I'm facing same issue.
LINK : warning LNK4044: unrecognized option '/MD'; ignored
libcpmt.lib(xthrow.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in New_V1.obj
libcpmt.lib(uncaught_exception.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in New_V1.obj
..\New_V1.rt-win64 : fatal error LNK1319: 2 mismatches detected
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\link.EXE"' : return code '0x527'
Stop.
Sissuire
on 6 Mar 2021
Accepted Answer
More Answers (0)
Categories
Find more on OpenCV Support in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!