[speex-dev] libspeex/SSE Intrinsics with GCC 3.3.x

Michael T. Dean mtdean at thirdcontact.com
Thu Apr 1 14:21:25 PST 2004

When compiling Speex 1.1.4 with GCC 3.3.2, the option -msse must be 
added to the CFLAGS in libspeex/Makefile.

GCC 3.1.1 added a new option "-msse" (see 
http://gcc.gnu.org/gcc-3.1/changes.html , specifically under "New 
Targets and Target Specific Improvements") to enable SSE instructions 
within the compiler's output (for appropriate architectures).

Compiling speex on GCC 3.3.2 without the -msse option yields the error 
message shown at bottom.  The referenced file (xmmintrin.h) contains a 
check to ensure that SSE is enabled (via -msse) before use:

#ifndef __SSE__
# error "SSE instruction set not enabled"

This check seems to have been added to the GCC 3.3.x series.

Once the option is added to CFLAGS, libspeex (and the rest of the speex 
package) compiles cleanly and executes properly.

Mike Dean

-DVERSION=\"1.1.4\" -D_USE_SSE=1 -I. -I. -g -O2 -MT nb_celp.lo -MD -MP 
-MF .deps/nb_celp.Tpo -c nb_celp.c  -fPIC -DPIC -o .libs/nb_celp.o
In file included from vq.h:43,
                 from nb_celp.c:41:
#error "SSE instruction set not enabled"
In file included from nb_celp.c:41:
vq.h:44: error: parse error before '*' token
vq.h:46: error: parse error before '*' token
make[1]: *** [nb_celp.lo] Error 1
make[1]: Leaving directory `/usr/local/src/mdean/speex-1.1.4/libspeex'
make: *** [all-recursive] Error 1

<p>--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'speex-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.

More information about the Speex-dev mailing list