Libyuv编译遇到asm错误,因为‘asm’中存在未知的寄存器名称‘ymm1’
我尝试用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怎么了?
发布于 2014-10-05 11:15:49
看起来您没有做任何事情来将-mavx传递给编译器。ymm*是AVX-256寄存器。
https://stackoverflow.com/questions/26199085
复制相似问题