GNOME Bugzilla – Bug 770057
openh264: "invalid combination of opcode and operands" build failure with old yasm on debian 8.5
Last modified: 2018-01-20 14:56:25 UTC
When cross compiling GStreamer for Win32 using Cerbero the openh264 package fails with: yasm -DX86_32 -f win32 -DPREFIX -I./codec/common/x86/ -o codec/common/x86/dct.o codec/common/x86/dct.asm codec/common/x86/dct.asm:897: error: invalid combination of opcode and operands codec/common/x86/dct.asm:897: error: invalid combination of opcode and operands codec/common/x86/dct.asm:900: error: invalid combination of opcode and operands codec/common/x86/dct.asm:900: error: invalid combination of opcode and operands codec/common/x86/dct.asm:903: error: invalid combination of opcode and operands codec/common/x86/dct.asm:903: error: invalid combination of opcode and operands codec/common/x86/dct.asm:906: error: invalid combination of opcode and operands codec/common/x86/dct.asm:906: error: invalid combination of opcode and operands codec/common/x86/dct.asm:951: error: invalid combination of opcode and operands codec/common/x86/dct.asm:951: error: invalid combination of opcode and operands codec/common/x86/dct.asm:954: error: invalid combination of opcode and operands codec/common/x86/dct.asm:954: error: invalid combination of opcode and operands codec/common/targets.mk:72: recipe for target 'codec/common/x86/dct.o' failed make: *** [codec/common/x86/dct.o] Error 1
That seems specific to your toolchain somehow, it works here: https://ci.gstreamer.net/job/cerbero-cross-mingw32/ Any ideas what it could be?
It looks like the tests you linked use previously built packages. That is a difference, since I used fresh a Cerbero clone and ran the bootstrap and package commands.
Ok, let's trigger a rebuild then. It should've really built the new version there at the time it was updated though.
Still builds here, see https://ci.gstreamer.net/job/cerbero-cross-mingw32/4788/console It rebuilt openh264 from scratch there.
I reclone and rebuilt from the ground up and got the same error. I suspected the Debian yasm version at that point so I compiled 1.3.0 myself and that resolved it. I'm using Debian 8.5 for those who might run across this.
Thanks for tracking down the cause and fix. I don't know if there is more we want to do at this point. Current debian stable has 1.3.0, so we'd have to force the local yasm recipe here or something. We would probably accept a patch if anyone cares, but since this is for legacy systems, let's close it :)