关于emd的程序,高手请指教
下载了,安装install_emd.m结果出现以下情况。。
lcc preprocessor error: src/emdc.c:19 Could not find include file "extr.h"
lcc preprocessor error: src/emdc.c:20 Could not find include file "interpolation.h"
lcc preprocessor error: src/emdc.c:21 Could not find include file "local_mean.h"
lcc preprocessor error: src/emdc.c:35 Could not find include file "io.c"
lcc preprocessor error: src/emdc.c:36 Could not find include file "extr.c"
lcc preprocessor error: src/emdc.c:37 Could not find include file "interpolation.c"
lcc preprocessor error: src/emdc.c:38 Could not find include file "local_mean.c"
Error src/emdc.c: 30missing parameter type
Error src/emdc.c: 30syntax error; found `*' expecting `)'
Error src/emdc.c: 30skipping `*' `,' `stop_t' `*' `,'
Error src/emdc.c: 30missing name for parameter 1 to function `stop_sifting'
Error src/emdc.c: 30missing name for parameter 2 to function `stop_sifting'
Error src/emdc.c: 30syntax error; found `int' expecting `{'
Error src/emdc.c: 30empty declaration
Error src/emdc.c: 30syntax error; found `,' expecting `;'
Error src/emdc.c: 30skipping `,'
Error src/emdc.c: 30empty declaration
Error src/emdc.c: 30syntax error; found `)' expecting `;'
Error src/emdc.c: 30skipping `)'
Error src/emdc.c: 39syntax error; found `{' expecting `;'
Error src/emdc.c: 39too many errors
D:\MATLAB\R2007A\BIN\MEX.PL: Error: Compile of 'src/emdc.c' failed.
Compilation failed: Error using ==> mex at 206
Unable to complete successfully.
Installation complete. Run index_emd for a list of functions.
IMPORTANT: After running INSTALL_EMD you must run the "savepath" command to save the installation
but be careful that if you previously removed parts of the path (using e.g. the "rmpath" command)
these will be permanently removed after you run "savepath"
不知道是怎么回事啊,请高手指教
matlab的版本是2007a,是不是版本不适合啊?谢谢。 原帖由 murhythm 于 2007-4-14 10:01 发表
下载了,安装install_emd.m
结果出现以下情况。。
lcc preprocessor error: src/emdc.c:19 Could not find include file "extr.h"
lcc preprocessor error: src/emdc.c:20 Could not find incl ...
首先安装C++(VC或者BCB均可),然后在matlab中运行 mbuild -setup 和 mex -setup,最后再运行 install_emd.m
回复 #2 eight 的帖子
为什么我在运行mbuild -setup 和 mex -setup时很顺利,但是在运行install_emd.m时就出现了不正常呢?>> install_emd.m
??? The function, script, or class install_emd
cannot be indexed using {} or . indexing. 原帖由 bingbing1110 于 2007-4-14 11:02 发表
为什么我在运行mbuild -setup 和 mex -setup时很顺利,但是在运行install_emd.m时就出现了不正常呢?
>> install_emd.m
??? The function, script, or class install_emd
cannot be indexed using {}...
请阅读matlab基础书,看看m文件是如何运行的(事实上很简单,把.m去掉)
注意运行 mbuild 和 install 是为了把你机子上安装的C++ 关联到matlab的编译器中,所以不能选择 LCC 那个,否则结果跟你一楼的情形一样
[ 本帖最后由 eight 于 2007-4-14 11:14 编辑 ] 还是不行啊,大虾能不能详细点?是不是之前还要个vc++啊? 当然要先安装VC++ 6.0了,然后再试试。
不过我是这样操作的但是好像是缺少 一个属性为dll的文件 失败了
具体怎么解决,请搞定的回答 肯定有搞定的同志啊,在这个地方就卡住了,很打击菜鸟的激情啊。大虾说说啊。 在安装mex -setup时,有个warning,不太知道什么意思,我刚开始学matlab,还请高手赐教
Warning: The file extension of 32-bit Windows MEX-files was changed
from ".dll" to ".mexw32" in MATLAB 7.1 (R14SP3). The generated
MEX-file will not be found by MATLAB versions prior to 7.1.
Use the -output option with the ".dll" file extension to
generate a MEX-file that can be called in previous versions.
For more information see:
MATLAB 7.1 Release Notes, New File Extension for MEX-Files on Windows >> mbuild -setup
Please choose your compiler for building standalone MATLAB applications:
Would you like mbuild to locate installed compilers /n? y
Select a compiler:
Lcc-win32 C 2.4.1 in C:\PROGRA~1\MATLAB\R2008a\sys\lcc
Microsoft Visual C++ 6.0 in D:\Program Files\Microsoft Visual Studio C++\MSDev98
None
Compiler: 2
Please verify your choices:
Compiler: Microsoft Visual C++ 6.0
Location: D:\Program Files\Microsoft Visual Studio C++\MSDev98
Are these correct /n? y
Warning: MBUILD requires that the Microsoft Visual C++ 6.0
directories "VC98" and "Common" be located within the same parent directory.
(Expected to find these directories in 'D:\Program Files\Microsoft Visual Studio C++\MSDev98'.)
Trying to update options file: C:\Documents and Settings\zzj\Application Data\MathWorks\MATLAB\R2008a\compopts.bat
From template: C:\PROGRA~1\MATLAB\R2008a\bin\win32\mbuildopts\msvc60compp.bat
Done . . .
>>mex -setup
Please choose your compiler for building external interface (MEX) files:
Would you like mex to locate installed compilers /n? y
Select a compiler:
Lcc-win32 C 2.4.1 in C:\PROGRA~1\MATLAB\R2008a\sys\lcc\bin
Microsoft Visual C++ 6.0 in D:\Program Files\Microsoft Visual Studio C++\MSDev98
None
Compiler: 2
Please verify your choices:
Compiler: Microsoft Visual C++ 6.0
Location: D:\Program Files\Microsoft Visual Studio C++\MSDev98
Are these correct /n? y
Warning: MEX requires that the Microsoft Visual C++ 6.0
directories "VC98" and "Common" be located within the same parent directory.
(Expected to find these directories in 'D:\Program Files\Microsoft Visual Studio C++\MSDev98'.)
Trying to update options file: C:\Documents and Settings\zzj\Application Data\MathWorks\MATLAB\R2008a\mexopts.bat
From template: C:\PROGRA~1\MATLAB\R2008a\bin\win32\mexopts\msvc60opts.bat
Done . . .
**************************************************************************
Warning: The MATLAB C and Fortran API has changed to support MATLAB
variables with more than 2^32-1 elements.In the near future
you will be required to update your code to utilize the new
API. You can find more information about this at:
http://www.mathworks.com/support/solutions/data/1-5C27B9.html?solution=1-5C27B9
Building with the -largeArrayDims option enables the new API.
**************************************************************************
>>install_emd
cemdc.c
C:\Program Files\MATLAB\R2008a\toolbox\package_emd\EMDs\src\cemdc.c(19) : fatal error C1083: Cannot open include file: 'complex.h': No such file or directory
C:\PROGRA~1\MATLAB\R2008A\BIN\MEX.PL: Error: Compile of 'cemdc.c' failed.
cemdc.c
C:\Program Files\MATLAB\R2008a\toolbox\package_emd\EMDs\src\cio.c(121) : warning C4018: '!=' : signed/unsigned mismatch
C:\Program Files\MATLAB\R2008a\toolbox\package_emd\EMDs\src\clocal_mean.c(58) : error C2065: 'M_PI' : undeclared identifier
C:\PROGRA~1\MATLAB\R2008A\BIN\MEX.PL: Error: Compile of 'cemdc.c' failed.
cemdc_fix.c
C:\Program Files\MATLAB\R2008a\toolbox\package_emd\EMDs\src\cemdc_fix.c(19) : fatal error C1083: Cannot open include file: 'complex.h': No such file or directory
C:\PROGRA~1\MATLAB\R2008A\BIN\MEX.PL: Error: Compile of 'cemdc_fix.c' failed.
cemdc_fix.c
C:\Program Files\MATLAB\R2008a\toolbox\package_emd\EMDs\src\cio_fix.c(104) : warning C4018: '!=' : signed/unsigned mismatch
C:\Program Files\MATLAB\R2008a\toolbox\package_emd\EMDs\src\clocal_mean.c(58) : error C2065: 'M_PI' : undeclared identifier
C:\PROGRA~1\MATLAB\R2008A\BIN\MEX.PL: Error: Compile of 'cemdc_fix.c' failed.
cemdc2.c
C:\Program Files\MATLAB\R2008a\toolbox\package_emd\EMDs\src\cemdc2.c(19) : fatal error C1083: Cannot open include file: 'complex.h': No such file or directory
C:\PROGRA~1\MATLAB\R2008A\BIN\MEX.PL: Error: Compile of 'cemdc2.c' failed.
cemdc2.c
C:\Program Files\MATLAB\R2008a\toolbox\package_emd\EMDs\src\cio.c(121) : warning C4018: '!=' : signed/unsigned mismatch
C:\Program Files\MATLAB\R2008a\toolbox\package_emd\EMDs\src\clocal_mean2.c(62) : error C2065: 'M_PI' : undeclared identifier
C:\PROGRA~1\MATLAB\R2008A\BIN\MEX.PL: Error: Compile of 'cemdc2.c' failed.
cemdc2_fix.c
C:\Program Files\MATLAB\R2008a\toolbox\package_emd\EMDs\src\cemdc2_fix.c(19) : fatal error C1083: Cannot open include file: 'complex.h': No such file or directory
C:\PROGRA~1\MATLAB\R2008A\BIN\MEX.PL: Error: Compile of 'cemdc2_fix.c' failed.
cemdc2_fix.c
C:\Program Files\MATLAB\R2008a\toolbox\package_emd\EMDs\src\cio_fix.c(104) : warning C4018: '!=' : signed/unsigned mismatch
C:\Program Files\MATLAB\R2008a\toolbox\package_emd\EMDs\src\clocal_mean2.c(62) : error C2065: 'M_PI' : undeclared identifier
C:\PROGRA~1\MATLAB\R2008A\BIN\MEX.PL: Error: Compile of 'cemdc2_fix.c' failed.
Warning: The compilation of the following files failed:
> In make_emdc at 48
In install_emd at 26
cemdc.c
cemdc_fix.c
cemdc2.c
cemdc2_fix.c
Some errors occurred during compilation. See details above.
Installation complete. Run index_emd for a list of functions.
IMPORTANT: After running INSTALL_EMD you must run the "savepath" command to save the installation
but be careful that if you previously removed parts of the path (using e.g. the "rmpath" command)
these will be permanently removed after you run "savepath"
>> 我是新手,安装EMD过程出现一下情况,请高手帮忙指导,谢谢,:@) 建议建一个EMD的QQ交流群,方便及时交流