Libyuv编译在'asm'中遇到未知寄存器名称'ymm1'的asm错误
我试图在Ubuntu14中编译libyuv(似乎是最新的)。当我继续制作它时,存在停止编译过程的asm相关错误。它报道:
make -j7 V=1 -f linux.mk
g++ -c -O2 -fomit-frame-pointer -Iinclude/ source/row_posix.cc -o source/row_posix.o
g++ -c -O2 -fomit-frame-pointer -Iinclude/ source/scale_mips.cc -o source/scale_mips.o
g++ -c -O2 -fomit-frame-pointer -Iinclude/ source/scale_posix.cc -o source/scale_posix.o
g++ -c -O2 -fomit-frame-pointer -Iinclude/ source/video_common.cc -o source/video_common.o
source/row_posix.cc: In function ‘void libyuv::CopyRow_AVX(const uint8*, uint8*, int)’:
source/row_posix.cc:3290:4: error: unknown register name ‘ymm1’ in ‘asm’
);
^
source/row_posix.cc:3290:4: error: unknown register name ‘ymm0’ in ‘asm’
make: *** [source/row_posix.o] 错误 1
怎么了?
答案 0 :(得分:1)
看起来你没有做任何事情来将-mavx
传递给编译器。 ymm*
是AVX-256寄存器。