fatal error LNK1104: cannot open file 'libmx.lib libmat.lib libeng.lib'
이전 댓글 표시
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.
답변 (2개)
Kaustubha Govind
2011년 12월 7일
0 개 추천
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
sam
2011년 12월 7일
Kaustubha Govind
2011년 12월 8일
Did you add the .lib (probably called sinwave.lib in your case) generated by MATLAB Compiler instead of "libmx.lib, libmat.lib libeng.lib"? That's where those symbols should be defined.
sam
2011년 12월 8일
sam
2011년 12월 8일
카테고리
도움말 센터 및 File Exchange에서 MATLAB Compiler에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!