Error calling a DLL from MSVS C++ 2010

1 Ansicht (letzte 30 Tage)
Paul
Paul am 3 Nov. 2014
Kommentiert: Paul am 5 Nov. 2014
So I was able to create the .dll file in MATLAB 2013b with
mcc -B csharedlib:libmatrix solution.m
and had no problem calling this .dll file from Visual Studio C++ 2010.
However, since I re-compiled this same .dll in MATLAB 2014a with the exact same command, I got "Error using internal.optim.getNNZcounts" (see image below) when I called this .dll from my Visual Studio C++ 2010 project.
I am not sure what could have caused this error, as it worked totally fine when I compiled it with MATLAB 2013b which I no longer have a licence anymore. Any help or input would be appreciated.
Here are the codes for "solution.m" MATLAB file I used to compile the .dll with:
function [X,D] = solution(i,j,s,info,Y,LB,UB)
S = sparse(i,j,s,info(1),info(2),info(3));
X=quadprog(2*S'*S, -2*S'*Y,[],[],[],[],LB,UB,[],options);
D=S*X-Y;
  5 Kommentare
Paul
Paul am 4 Nov. 2014
I checked the dates and stuff, and it does seem that it's from MATLAB 2013b. When I move the getNNXcounts.mexw64 file out of the "+optim" folder, I get an error that says that file cannot be found. I did the same to the "libmat12" folder, however, and MATLAB simply re-creates the folder.
Geoff Hayes
Geoff Hayes am 4 Nov. 2014
Or, it could be that this file, getNNXcounts.mexw64, is part of the MATLAB toolbox that came with R2014a.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Titus Edelhofer
Titus Edelhofer am 4 Nov. 2014
Hi,
it looks indeed as from R2013b: the folder mcrCache8.2 tells you it relates to MCR version 8.2 of the MATLAB compiler, and that's indeed R2013b.
So I'd suggest to compile (again) with R2014a. And when you run the code, to be on the safe side, add the matlabroot\runtime\win64 and matlabroot\bin\win64 folders to your (DOS-)PATH at the beginning.
Titus
  4 Kommentare
Geoff Hayes
Geoff Hayes am 4 Nov. 2014
Thanks Titus!
Paul
Paul am 5 Nov. 2014
Thanks Titus and Geoff. I will give that a try when I can.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu MATLAB Compiler finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by