在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
答案 0 :(得分:2)
试试这个:
edit toolboxCompile.m file and replace "opts = {'-output'}" with
opts = {'CXXFLAGS=-msse2 -msse' '-output'};
答案 1 :(得分:1)
Cabaf的答案没有按预期发挥作用。但让我的工作变得有帮助。
这对我有用:
mex'CXXFLAGS = -msse2 -msse'fileName.cpp