Date: May 5, 2011 2:44 AM
Author: Ahmed Hakim
Subject: Re: mex function for beginners

Hello I have problems with using MEX function
I purchased some C++ files and I want to use them in MATLAB

these files are:
SAT_Filter.cpp
SAT_DE.cpp
SAT_Filter.cpp
SAT_Kepler.cpp
SAT_RefSys.cpp
SAT_Time.cpp
SAT_VecMat.cpp
RTOD.cpp

and their header files:
SAT_Force.h
SAT_DE.h
SAT_Filter.h
SAT_Kepler.h
SAT_RefSys.h
SAT_Time.h
SAT_VecMat.h
Sat_const.h

when using command
mex -v SAT_Filter.cpp SAT_DE.cpp SAT_Filter.cpp SAT_Kepler.cpp SAT_RefSys.cpp SAT_Time.cpp SAT_VecMat.cpp RTOD.cpp

I have these errors:


--> link /out:"SAT_Filter.mexw64" /dll /export:mexFunction /LIBPATH:"C:\PROGRA~1\MATLAB\R2009B\extern\lib\win64\microsoft" libmx.lib libmex.lib libmat.lib /MACHINE:X64 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /incremental:NO /implib:"C:\USERS\AHMEDH~1\APPDATA\LOCAL\TEMP\MEX_PY~1\templib.x" /MAP:"SAT_Filter.mexw64.map" @C:\USERS\AHMEDH~1\APPDATA\LOCAL\TEMP\MEX_PY~1\MEX_TMP.RSP

C:\USERS\AHMEDH~1\APPDATA\LOCAL\TEMP\MEX_PY~1\SAT_Filter.obj : warning LNK4042: object specified more than once; extras ignored
Creating library C:\USERS\AHMEDH~1\APPDATA\LOCAL\TEMP\MEX_PY~1\templib.x and object C:\USERS\AHMEDH~1\APPDATA\LOCAL\TEMP\MEX_PY~1\templib.exp
RTOD.obj : error LNK2019: unresolved external symbol "class Vector __cdecl AccelHarmonic(class Vector const &,class Matrix const &,double,double,class Matrix const &,int,int)" (?AccelHarmonic@@YA?AVVector@@AEBV1@AEBVMatrix@@NN1HH@Z) referenced in function "class Vector __cdecl Accel(double,class Vector const &,int)" (?Accel@@YA?AVVector@@NAEBV1@H@Z)
SAT_Filter.mexw64 : fatal error LNK1120: 1 unresolved externals

C:\PROGRA~1\MATLAB\R2009B\BIN\MEX.PL: Error: Link of 'SAT_Filter.mexw64' failed.

??? Error using ==> mex at 221
Unable to complete successfully.

So Can anybody help me?