fatal error LNK1104: cannot open file 'libmx.lib libmat.lib libeng.lib'

20 views (last 30 days)
Hi, I want to make a dll compiled in Matlab, and then use this dll in VS2010. The function is very simple:
function [y] = sinwave(x)
y = sin(x);
end;
and MCC works well, produced .dll, .h, .lib files.
But when I compiled a simple program in VS2010,
#include <stdio.h>
#include <math.h>
//#include "vld.h"
#include <stdlib.h>
#include <string.h>
#include "sinwave.h"
#include "mclmcr.h"
#include "mclmcrrt.h"
#include "mclcppclass.h"
void main(void)
{
if (!mclInitializeApplication(NULL,0))
{
std::cerr << "could not initialize the triangle library properly" << std::endl;
return;
}
if (!sinwaveInitialize())
{
std::cerr << "could not initialize the tb library properly" << std::endl;
return;
}
sinwaveTerminate();
mclTerminateApplication();
}
//an message: LINK : fatal error LNK1104: cannot open file 'libmx.lib libmat.lib libeng.lib' showed.
I added the matlab path extern/lib/win32, win64 to system environment path of my PC, and restart the vs2010.

Answers (2)

Kaustubha Govind
Kaustubha Govind on 7 Dec 2011
Are you attempting to link against libmx.lib libmat.lib libeng.lib in your Linker options? I don't think those are needed. You should only need to link against the .lib file generated for your application by MATLAB Compiler.
  4 Comments
sam
sam on 8 Dec 2011
Still not work. I tried to add sinwave.h in <additional dependencies> box, and got:
LINK : fatal error LNK1104: cannot open file 'sinwave.lib libmx.lib libmat.lib libeng.lib';
It is weird, since sinwave.lib is in the same folder with soruce file, testSinwave.cpp.
sam
sam on 8 Dec 2011
And I use vs2010 x64, wiin7 x64 version, I had changed property manager: debug/x64, release/x64

Sign in to comment.


sam
sam on 9 Dec 2011
Finally, it was solved.

Categories

Find more on MATLAB Compiler in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!