0

在 Matlab 中编译 mex 文件的工具箱时,我收到以下错误:

In file included from /home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:9:0,
                 from /home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:9:
/usr/lib/gcc/i686-linux-gnu/4.6/include/emmintrin.h:32:3: error: #error "SSE2 instruction set not enabled"
In file included from /home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:9:0:
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:15:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:16:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:17:1: error: ‘__m128i’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:18:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:19:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:20:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:21:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:22:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:23:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:26:1: error: ‘__m128i’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:27:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:28:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:30:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:32:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:33:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:34:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:35:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:36:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:37:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:38:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:39:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:40:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:41:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:42:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:45:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:46:1: error: ‘__m128i’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:47:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:48:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:49:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:52:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:53:1: error: ‘__m128i’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:56:1: error: ‘__m128’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/sse.hpp:57:1: error: ‘__m128i’ does not name a type
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp: In function ‘void convBox(float*, float*, int, int, int, int, int)’:
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:35:67: error: ‘LDu’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:35:68: error: ‘INC’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:36:60: error: ‘LD’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:36:61: error: ‘MUL’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:36:75: error: ‘LDu’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:36:76: error: ‘SUB’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:36:77: error: ‘MUL’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:36:77: error: declaration of ‘<typeprefixerror>MUL’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:36:61: error: conflicts with previous declaration ‘<typeprefixerror>MUL’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:36:78: error: ‘STR’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:45:64: error: ‘LDu’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:45:76: error: ‘SUB’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:45:77: error: ‘MUL’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:45:78: error: ‘DEC’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp: In function ‘void conv11Y(float*, float*, int, int, int)’:
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:61:51: error: ‘LDu’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:61:51: error: ‘ADD’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:61:74: error: ‘_mm_shuffle_ps’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:61:75: error: ‘STR’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:67:37: error: ‘LDu’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:67:37: error: ‘ADD’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:67:45: error: ‘STR’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp: In function ‘void conv11(float*, float*, int, int, int, int, int)’:
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:80:61: error: ‘LDu’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:80:73: error: ‘ADD’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:80:74: error: ‘MUL’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:80:76: error: ‘STR’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp: In function ‘void convTri(float*, float*, int, int, int, int, int)’:
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:112:54: error: ‘LDu’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:112:55: error: ‘STR’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:112:56: error: ‘STR’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:112:56: error: declaration of ‘<typeprefixerror>STR’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:112:55: error: conflicts with previous declaration ‘<typeprefixerror>STR’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:113:75: error: ‘LDu’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:113:76: error: ‘INC’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:113:77: error: ‘INC’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:113:77: error: declaration of ‘<typeprefixerror>INC’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:113:76: error: conflicts with previous declaration ‘<typeprefixerror>INC’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:114:61: error: ‘LD’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:114:62: error: ‘MUL’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:114:72: error: ‘SUB’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:114:74: error: ‘MUL’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:114:74: error: declaration of ‘<typeprefixerror>MUL’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:114:62: error: conflicts with previous declaration ‘<typeprefixerror>MUL’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:114:75: error: ‘STR’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:115:36: error: ‘STR’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:126:9: error: ‘__m128’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:126:16: error: expected ‘;’ before ‘del’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:127:37: error: ‘del’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:127:40: error: ‘INC’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:127:42: error: ‘MUL’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:127:43: error: ‘INC’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:127:43: error: declaration of ‘<typeprefixerror>INC’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:127:40: error: conflicts with previous declaration ‘<typeprefixerror>INC’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp: In function ‘void convTri1Y(float*, float*, int, float, int)’:
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:143:51: error: ‘LDu’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:143:51: error: ‘MUL’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:143:51: error: ‘ADD’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:143:51: error: ‘ADD’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:143:51: error: declaration of ‘<typeprefixerror>ADD’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:143:51: error: conflicts with previous declaration ‘<typeprefixerror>ADD’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:143:70: error: ‘_mm_shuffle_ps’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:143:71: error: ‘STR’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:149:35: error: ‘LDu’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:149:35: error: ‘MUL’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:149:35: error: ‘ADD’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:149:35: error: ‘ADD’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:149:35: error: declaration of ‘<typeprefixerror>ADD’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:149:35: error: conflicts with previous declaration ‘<typeprefixerror>ADD’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:149:42: error: ‘STR’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp: In function ‘void convTri1(float*, float*, int, int, int, float, int)’:
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:163:41: error: ‘LDu’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:163:59: error: ‘MUL’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:163:60: error: ‘ADD’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:163:72: error: ‘ADD’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:163:72: error: declaration of ‘<typeprefixerror>ADD’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:163:60: error: conflicts with previous declaration ‘<typeprefixerror>ADD’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:163:73: error: ‘MUL’ was not declared in this scope
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:163:73: error: declaration of ‘<typeprefixerror>MUL’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:163:59: error: conflicts with previous declaration ‘<typeprefixerror>MUL’
/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp:163:74: error: ‘STR’ was not declared in this scope

    mex: compile of ' "/home/josh/Desktop/Project/code/toolbox/channels/private/convConst.cpp"' failed.

是什么导致了这个错误,我该如何解决?

我正在使用 Matlab 7.10.0 R2010a 和 gcc 版本 4.6.3-1ubuntu5 运行 Ubuntu 12.04

4

2 回答 2

2

Cabaf 的回答没有按预期工作。但是让我的工作很有帮助。

这对我有用:

mex 'CXXFLAGS=-msse2 -msse' 文件名.cpp

于 2014-08-11T12:07:58.837 回答
2

尝试这个:

 edit toolboxCompile.m file and replace "opts = {'-output'}" with
   opts = {'CXXFLAGS=-msse2 -msse' '-output'};
于 2013-04-22T04:38:16.550 回答